wireshark-network-traffic-analysis
Wiresharkを用いてネットワークトラフィックを解析し、パケットキャプチャ、フィルタリング、TCP/UDPストリーム追跡、異常検知、プロトコル分析など、ネットワークに関する問題を調査・解決するSkill。
📜 元の英語説明(参考)
This skill should be used when the user asks to "analyze network traffic with Wireshark", "capture packets for troubleshooting", "filter PCAP files", "follow TCP/UDP streams", "detect network anomalies", "investigate suspicious traffic", or "perform protocol analysis". It provides comprehensive techniques for network packet capture, filtering, and analysis using Wireshark.
🇯🇵 日本人クリエイター向け解説
Wiresharkを用いてネットワークトラフィックを解析し、パケットキャプチャ、フィルタリング、TCP/UDPストリーム追跡、異常検知、プロトコル分析など、ネットワークに関する問題を調査・解決するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o wireshark-network-traffic-analysis.zip https://jpskill.com/download/20790.zip && unzip -o wireshark-network-traffic-analysis.zip && rm wireshark-network-traffic-analysis.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/20790.zip -OutFile "$d\wireshark-network-traffic-analysis.zip"; Expand-Archive "$d\wireshark-network-traffic-analysis.zip" -DestinationPath $d -Force; ri "$d\wireshark-network-traffic-analysis.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
wireshark-network-traffic-analysis.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
wireshark-network-traffic-analysisフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
Wireshark ネットワークトラフィック分析
目的
Wireshark を使用して包括的なネットワークトラフィック分析を実行し、セキュリティ調査、パフォーマンス最適化、およびトラブルシューティングのためにネットワークパケットをキャプチャ、フィルタリング、および検査します。このスキルにより、ネットワークプロトコルの体系的な分析、異常の検出、および PCAP ファイルからのネットワーク会話の再構築が可能になります。
入力 / 前提条件
必須ツール
- Wireshark がインストールされていること (Windows、macOS、または Linux)
- キャプチャ権限を持つネットワークインターフェース
- オフライン分析用の PCAP/PCAPNG ファイル
- ライブキャプチャのための管理者/root権限
技術要件
- ネットワークプロトコル (TCP、UDP、HTTP、DNS) の理解
- IPアドレスとポートに関する知識
- OSIモデルのレイヤーに関する知識
- 一般的な攻撃パターンに関する理解
ユースケース
- ネットワークのトラブルシューティングと接続性の問題
- セキュリティインシデント調査
- マルウェアトラフィック分析
- パフォーマンス監視と最適化
- プロトコル学習と教育
出力 / 成果物
主要な出力
- 特定のトラフィックに対するフィルタリングされたパケットキャプチャ
- 再構築された通信ストリーム
- トラフィック統計と視覚化
- インシデントの証拠文書
コアワークフロー
フェーズ 1: ネットワークトラフィックのキャプチャ
ライブキャプチャの開始
ネットワークインターフェースでパケットのキャプチャを開始します。
1. Wireshark を起動します
2. メイン画面からネットワークインターフェースを選択します
3. サメのひれアイコンをクリックするか、インターフェースをダブルクリックします
4. キャプチャがすぐに開始されます
キャプチャコントロール
| アクション | ショートカット | 説明 |
|---|---|---|
| キャプチャ開始/停止 | Ctrl+E | キャプチャのオン/オフを切り替えます |
| キャプチャ再開 | Ctrl+R | キャプチャを停止し、新しいキャプチャを開始します |
| PCAPファイルを開く | Ctrl+O | 既存のキャプチャファイルを読み込みます |
| キャプチャを保存 | Ctrl+S | 現在のキャプチャを保存します |
キャプチャフィルター
データ収集を制限するために、キャプチャ前にフィルターを適用します。
# 特定のホストのみをキャプチャ
host 192.168.1.100
# 特定のポートをキャプチャ
port 80
# 特定のネットワークをキャプチャ
net 192.168.1.0/24
# 特定のトラフィックを除外
not arp
# フィルターを組み合わせる
host 192.168.1.100 and port 443
フェーズ 2: 表示フィルター
基本的なフィルター構文
分析のためにキャプチャされたパケットをフィルターします。
# IPアドレスフィルター
ip.addr == 192.168.1.1 # IPとの間のすべてのトラフィック
ip.src == 192.168.1.1 # 送信元IPのみ
ip.dst == 192.168.1.1 # 宛先IPのみ
# ポートフィルター
tcp.port == 80 # TCPポート 80
udp.port == 53 # UDPポート 53
tcp.dstport == 443 # 宛先ポート 443
tcp.srcport == 22 # 送信元ポート 22
プロトコルフィルター
特定のプロトコルでフィルターします。
# 一般的なプロトコル
http # HTTPトラフィック
https or ssl or tls # 暗号化されたウェブトラフィック
dns # DNSクエリと応答
ftp # FTPトラフィック
ssh # SSHトラフィック
icmp # Ping/ICMPトラフィック
arp # ARPリクエスト/応答
dhcp # DHCPトラフィック
smb or smb2 # SMBファイル共有
TCPフラグフィルター
特定の接続状態を識別します。
tcp.flags.syn == 1 # SYNパケット (接続試行)
tcp.flags.ack == 1 # ACKパケット
tcp.flags.fin == 1 # FINパケット (接続終了)
tcp.flags.reset == 1 # RSTパケット (接続リセット)
tcp.flags.syn == 1 && tcp.flags.ack == 0 # SYNのみ (初期接続)
コンテンツフィルター
特定のコンテンツを検索します。
frame contains "password" # 文字列を含むパケット
http.request.uri contains "login" # 文字列を含むHTTP URI
tcp contains "GET" # 文字列を含むTCPパケット
分析フィルター
潜在的な問題を特定します。
tcp.analysis.retransmission # TCP再送
tcp.analysis.duplicate_ack # 重複ACK
tcp.analysis.zero_window # ゼロウィンドウ (フロー制御)
tcp.analysis.flags # 問題のあるパケット
dns.flags.rcode != 0 # DNSエラー
フィルターの組み合わせ
複雑なクエリには論理演算子を使用します。
# AND演算子
ip.addr == 192.168.1.1 && tcp.port == 80
# OR演算子
dns || http
# NOT演算子
!(arp || icmp)
# 複雑な組み合わせ
(ip.src == 192.168.1.1 || ip.src == 192.168.1.2) && tcp.port == 443
フェーズ 3: ストリームの追跡
TCPストリームの再構築
完全なTCP会話を表示します。
1. 任意のTCPパケットを右クリックします
2. Follow > TCP Stream を選択します
3. 再構築された会話を表示します
4. ASCII、Hex、Rawビューを切り替えます
5. このストリームのみを表示するようにフィルターします
ストリームの種類
| ストリーム | アクセス | ユースケース |
|---|---|---|
| TCP Stream | Follow > TCP Stream | ウェブ、ファイル転送、任意のTCP |
| UDP Stream | Follow > UDP Stream | DNS、VoIP、ストリーミング |
| HTTP Stream | Follow > HTTP Stream | ウェブコンテンツ、ヘッダー |
| TLS Stream | Follow > TLS Stream | 暗号化されたトラフィック (鍵が利用可能な場合) |
ストリーム分析のヒント
- リクエスト/レスポンスのペアを確認します
- 転送されたファイルやデータを特定します
- 平文の認証情報を探します
- 異常なパターンやコマンドに注意します
フェーズ 4: 統計分析
プロトコル階層
プロトコル分布を表示します。
Statistics > Protocol Hierarchy
表示されるもの:
- 各プロトコルの割合
- パケット数
- 転送されたバイト数
- プロトコル内訳ツリー
会話
通信ペアを分析します。
Statistics > Conversations
タブ:
- Ethernet: MACアドレスペア
- IPv4/IPv6: IPアドレスペア
- TCP: 接続の詳細 (ポート、バイト、パケット)
- UDP: データグラム交換
エンドポイント
アクティブなネットワーク参加者を表示します。
Statistics > Endpoints
表示されるもの:
- すべての送信元/宛先アドレス
- パケット数とバイト数
- 地理情報 (有効な場合)
フローグラフ
視覚化
(原文がここで切り詰められています)
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Wireshark Network Traffic Analysis
Purpose
Execute comprehensive network traffic analysis using Wireshark to capture, filter, and examine network packets for security investigations, performance optimization, and troubleshooting. This skill enables systematic analysis of network protocols, detection of anomalies, and reconstruction of network conversations from PCAP files.
Inputs / Prerequisites
Required Tools
- Wireshark installed (Windows, macOS, or Linux)
- Network interface with capture permissions
- PCAP/PCAPNG files for offline analysis
- Administrator/root privileges for live capture
Technical Requirements
- Understanding of network protocols (TCP, UDP, HTTP, DNS)
- Familiarity with IP addressing and ports
- Knowledge of OSI model layers
- Understanding of common attack patterns
Use Cases
- Network troubleshooting and connectivity issues
- Security incident investigation
- Malware traffic analysis
- Performance monitoring and optimization
- Protocol learning and education
Outputs / Deliverables
Primary Outputs
- Filtered packet captures for specific traffic
- Reconstructed communication streams
- Traffic statistics and visualizations
- Evidence documentation for incidents
Core Workflow
Phase 1: Capturing Network Traffic
Start Live Capture
Begin capturing packets on network interface:
1. Launch Wireshark
2. Select network interface from main screen
3. Click shark fin icon or double-click interface
4. Capture begins immediately
Capture Controls
| Action | Shortcut | Description |
|---|---|---|
| Start/Stop Capture | Ctrl+E | Toggle capture on/off |
| Restart Capture | Ctrl+R | Stop and start new capture |
| Open PCAP File | Ctrl+O | Load existing capture file |
| Save Capture | Ctrl+S | Save current capture |
Capture Filters
Apply filters before capture to limit data collection:
# Capture only specific host
host 192.168.1.100
# Capture specific port
port 80
# Capture specific network
net 192.168.1.0/24
# Exclude specific traffic
not arp
# Combine filters
host 192.168.1.100 and port 443
Phase 2: Display Filters
Basic Filter Syntax
Filter captured packets for analysis:
# IP address filters
ip.addr == 192.168.1.1 # All traffic to/from IP
ip.src == 192.168.1.1 # Source IP only
ip.dst == 192.168.1.1 # Destination IP only
# Port filters
tcp.port == 80 # TCP port 80
udp.port == 53 # UDP port 53
tcp.dstport == 443 # Destination port 443
tcp.srcport == 22 # Source port 22
Protocol Filters
Filter by specific protocols:
# Common protocols
http # HTTP traffic
https or ssl or tls # Encrypted web traffic
dns # DNS queries and responses
ftp # FTP traffic
ssh # SSH traffic
icmp # Ping/ICMP traffic
arp # ARP requests/responses
dhcp # DHCP traffic
smb or smb2 # SMB file sharing
TCP Flag Filters
Identify specific connection states:
tcp.flags.syn == 1 # SYN packets (connection attempts)
tcp.flags.ack == 1 # ACK packets
tcp.flags.fin == 1 # FIN packets (connection close)
tcp.flags.reset == 1 # RST packets (connection reset)
tcp.flags.syn == 1 && tcp.flags.ack == 0 # SYN-only (initial connection)
Content Filters
Search for specific content:
frame contains "password" # Packets containing string
http.request.uri contains "login" # HTTP URIs with string
tcp contains "GET" # TCP packets with string
Analysis Filters
Identify potential issues:
tcp.analysis.retransmission # TCP retransmissions
tcp.analysis.duplicate_ack # Duplicate ACKs
tcp.analysis.zero_window # Zero window (flow control)
tcp.analysis.flags # Packets with issues
dns.flags.rcode != 0 # DNS errors
Combining Filters
Use logical operators for complex queries:
# AND operator
ip.addr == 192.168.1.1 && tcp.port == 80
# OR operator
dns || http
# NOT operator
!(arp || icmp)
# Complex combinations
(ip.src == 192.168.1.1 || ip.src == 192.168.1.2) && tcp.port == 443
Phase 3: Following Streams
TCP Stream Reconstruction
View complete TCP conversation:
1. Right-click on any TCP packet
2. Select Follow > TCP Stream
3. View reconstructed conversation
4. Toggle between ASCII, Hex, Raw views
5. Filter to show only this stream
Stream Types
| Stream | Access | Use Case |
|---|---|---|
| TCP Stream | Follow > TCP Stream | Web, file transfers, any TCP |
| UDP Stream | Follow > UDP Stream | DNS, VoIP, streaming |
| HTTP Stream | Follow > HTTP Stream | Web content, headers |
| TLS Stream | Follow > TLS Stream | Encrypted traffic (if keys available) |
Stream Analysis Tips
- Review request/response pairs
- Identify transmitted files or data
- Look for credentials in plaintext
- Note unusual patterns or commands
Phase 4: Statistical Analysis
Protocol Hierarchy
View protocol distribution:
Statistics > Protocol Hierarchy
Shows:
- Percentage of each protocol
- Packet counts
- Bytes transferred
- Protocol breakdown tree
Conversations
Analyze communication pairs:
Statistics > Conversations
Tabs:
- Ethernet: MAC address pairs
- IPv4/IPv6: IP address pairs
- TCP: Connection details (ports, bytes, packets)
- UDP: Datagram exchanges
Endpoints
View active network participants:
Statistics > Endpoints
Shows:
- All source/destination addresses
- Packet and byte counts
- Geographic information (if enabled)
Flow Graph
Visualize packet sequence:
Statistics > Flow Graph
Options:
- All packets or displayed only
- Standard or TCP flow
- Shows packet timing and direction
I/O Graphs
Plot traffic over time:
Statistics > I/O Graph
Features:
- Packets per second
- Bytes per second
- Custom filter graphs
- Multiple graph overlays
Phase 5: Security Analysis
Detect Port Scanning
Identify reconnaissance activity:
# SYN scan detection (many ports, same source)
ip.src == SUSPECT_IP && tcp.flags.syn == 1
# Review Statistics > Conversations for anomalies
# Look for single source hitting many destination ports
Identify Suspicious Traffic
Filter for anomalies:
# Traffic to unusual ports
tcp.dstport > 1024 && tcp.dstport < 49152
# Traffic outside trusted network
!(ip.addr == 192.168.1.0/24)
# Unusual DNS queries
dns.qry.name contains "suspicious-domain"
# Large data transfers
frame.len > 1400
ARP Spoofing Detection
Identify ARP attacks:
# Duplicate ARP responses
arp.duplicate-address-frame
# ARP traffic analysis
arp
# Look for:
# - Multiple MACs for same IP
# - Gratuitous ARP floods
# - Unusual ARP patterns
Examine Downloads
Analyze file transfers:
# HTTP file downloads
http.request.method == "GET" && http contains "Content-Disposition"
# Follow HTTP Stream to view file content
# Use File > Export Objects > HTTP to extract files
DNS Analysis
Investigate DNS activity:
# All DNS traffic
dns
# DNS queries only
dns.flags.response == 0
# DNS responses only
dns.flags.response == 1
# Failed DNS lookups
dns.flags.rcode != 0
# Specific domain queries
dns.qry.name contains "domain.com"
Phase 6: Expert Information
Access Expert Analysis
View Wireshark's automated findings:
Analyze > Expert Information
Categories:
- Errors: Critical issues
- Warnings: Potential problems
- Notes: Informational items
- Chats: Normal conversation events
Common Expert Findings
| Finding | Meaning | Action |
|---|---|---|
| TCP Retransmission | Packet resent | Check for packet loss |
| Duplicate ACK | Possible loss | Investigate network path |
| Zero Window | Buffer full | Check receiver performance |
| RST | Connection reset | Check for blocks/errors |
| Out-of-Order | Packets reordered | Usually normal, excessive is issue |
Quick Reference
Keyboard Shortcuts
| Action | Shortcut |
|---|---|
| Open file | Ctrl+O |
| Save file | Ctrl+S |
| Start/Stop capture | Ctrl+E |
| Find packet | Ctrl+F |
| Go to packet | Ctrl+G |
| Next packet | ↓ |
| Previous packet | ↑ |
| First packet | Ctrl+Home |
| Last packet | Ctrl+End |
| Apply filter | Enter |
| Clear filter | Ctrl+Shift+X |
Common Filter Reference
# Web traffic
http || https
# Email
smtp || pop || imap
# File sharing
smb || smb2 || ftp
# Authentication
ldap || kerberos
# Network management
snmp || icmp
# Encrypted
tls || ssl
Export Options
File > Export Specified Packets # Save filtered subset
File > Export Objects > HTTP # Extract HTTP files
File > Export Packet Dissections # Export as text/CSV
Constraints and Guardrails
Operational Boundaries
- Capture only authorized network traffic
- Handle captured data according to privacy policies
- Avoid capturing sensitive credentials unnecessarily
- Properly secure PCAP files containing sensitive data
Technical Limitations
- Large captures consume significant memory
- Encrypted traffic content not visible without keys
- High-speed networks may drop packets
- Some protocols require plugins for full decoding
Best Practices
- Use capture filters to limit data collection
- Save captures regularly during long sessions
- Use display filters rather than deleting packets
- Document analysis findings and methodology
Examples
Example 1: HTTP Credential Analysis
Scenario: Investigate potential plaintext credential transmission
1. Filter: http.request.method == "POST"
2. Look for login forms
3. Follow HTTP Stream
4. Search for username/password parameters
Finding: Credentials transmitted in cleartext form data.
Example 2: Malware C2 Detection
Scenario: Identify command and control traffic
1. Filter: dns
2. Look for unusual query patterns
3. Check for high-frequency beaconing
4. Identify domains with random-looking names
5. Filter: ip.dst == SUSPICIOUS_IP
6. Analyze traffic patterns
Indicators:
- Regular timing intervals
- Encoded/encrypted payloads
- Unusual ports or protocols
Example 3: Network Troubleshooting
Scenario: Diagnose slow web application
1. Filter: ip.addr == WEB_SERVER
2. Check Statistics > Service Response Time
3. Filter: tcp.analysis.retransmission
4. Review I/O Graph for patterns
5. Check for high latency or packet loss
Finding: TCP retransmissions indicating network congestion.
Troubleshooting
No Packets Captured
- Verify correct interface selected
- Check for admin/root permissions
- Confirm network adapter is active
- Disable promiscuous mode if issues persist
Filter Not Working
- Verify filter syntax (red = error)
- Check for typos in field names
- Use Expression button for valid fields
- Clear filter and rebuild incrementally
Performance Issues
- Use capture filters to limit traffic
- Split large captures into smaller files
- Disable name resolution during capture
- Close unnecessary protocol dissectors
Cannot Decrypt TLS/SSL
- Obtain server private key
- Configure at Edit > Preferences > Protocols > TLS
- For ephemeral keys, capture pre-master secret from browser
- Some modern ciphers cannot be decrypted passively