PR 本記事には広告(Amazonアソシエイト・もしもアフィリエイト・A8.net等)が含まれます。掲載情報の正確性には努めていますが、商品の詳細は必ずリンク先で最新情報をご確認ください。

【ネットワークForensics編】pcapとWiresharkで通信の真相を読む|CTF思考フレームワーク #44

【ネットワークForensics編】pcapとWiresharkで通信の真相を読む|CTF思考フレームワーク #44 アイキャッチ画像
安全に生きたい編集部

広告・PRを含みます。この記事にはアフィリエイトリンクが含まれます。掲載内容は編集方針に基づいて作成していますが、価格・在庫・キャンペーン内容はリンク先で最新情報を確認してください。

ネットワークフォレンジックって、Wiresharkで通信を見るやつ?📡

それも一部。pcap解析の他、フローデータ(NetFlow)、DNS問い合わせログ、TLS Server Name Indication(SNI)――『何が・いつ・どこと通信したか』を多角的に再構築します。C2通信の発見、データ持ち出しの検知に必須。

ネットワークフォレンジックは、pcap・NetFlow・DNSログ・プロキシログから攻撃者の通信を再構築する技術。Wireshark、Zeek、Suricata、Arkimeなどのツールで、C2サーバーへのビーコン通信、データ持ち出し(exfiltration)、横展開通信を発見します。

通信ログから攻撃者の動きが全部見えるんだ…

この記事は、CTF思考フレームワーク第44回。ネットワークフォレンジックの基本(pcap解析・フロー解析・DNSログ)と、Wireshark/Zeek/Arkime の実践テクニック、C2通信・データ持ち出しの検知方法を整理します。

📖 この記事はシリーズの一部です
CTF思考フレームワーク#44 / 全86記事 → シリーズ一覧を見る →

📡 「通信のすべてはどこかに痕跡を残す」。pcapを眺める時間は、まるで通信ログの考古学。プロトコルの層を剥がしながら、攻撃者と被害者の対話を再生する作業です。

ネットワークForensicsの主役はpcap。Wireshark / tsharkでフロー単位に分解し、HTTP・DNS・TLS SNI・ICMPなどから「誰がいつ何にアクセスしたか」を組み立てます。

難易度:★★★(上級)

pcapとWiresharkで通信の真相を解読します🌐

ネットワークForensicsはパケットがすべて。1bitも嘘をつかない動かぬ証拠だよ🌐

この記事で出てくる言葉

先に意味を押さえておくと読みやすい用語です。

  • CTF: セキュリティの練習問題を解く競技。必ず許可された環境だけで試します。
  • マルウェア: 情報を盗む、端末を壊す、勝手に操作するなど悪意あるソフトの総称です。
  • DNS: ドメイン名をIPアドレスに変換するインターネットの住所録です。
  • 横展開: 侵入後に別の端末やサーバーへ移動して被害範囲を広げる動きです。
  • フォレンジック: ログや端末の痕跡から、何が起きたかを調べる作業です。

👀 観察フェーズ:まず何を見る?

pcap全体を流量・時間・宛先で俯瞰するのが第一歩。Wiresharkの「Statistics→Conversations」が最強🔍

広いpcapを開いたら、まず統計から入ります。通信量上位、エンドポイント、プロトコル分布、HTTPホスト、DNSクエリ。異常を浮き上がらせてから個別フローへ。

TLS暗号化通信でもSNI / 証明書 / JA3フィンガープリント / 通信パターンから多くが推測できます👀

暗号化されてても「いつ・どこへ・どれくらい」は隠せないんだね💡

  • Wireshark Statistics → Conversations / Endpoints
  • プロトコル階層(HTTP/HTTPS/DNS/SMB/SMTP比率)
  • DNSクエリ・応答(C2やデータ流出の温床)
  • TLS SNI(証明書フィールドより先にFQDNが見える)
  • HTTPファイル転送・User-Agent
  • ICMP・UDPの異常使用(covert channel)

ネットForensicsの読み筋は4方向

🤔 仮説フェーズ:攻撃者は何を考える?

📨 仮説①:DNSクエリでC2発見

不審ドメインへのDNS問い合わせはマルウェアの通信開始を示す。DGAパターンも要注目。

🔁 仮説②:定期Beacon検出

一定間隔(60秒等)で繰り返される小さなパケットはC2 beacon。RITAやJA3で検出。

📤 仮説③:データ持ち出し量

本来の通信量に対して大量のアウトバウンドがあれば情報窃取の可能性。

🪞 仮説④:プロトコル偽装

HTTPSポート443でHTTPSじゃない通信、DNSポート53でDNSじゃない通信はトンネリングの典型サイン。

🕶️ 攻撃者は「正規通信に紛れる」のが基本。HTTPS化、DoH/DoTでDNSログ回避、Domain Frontingで本当の宛先を隠す。逆に防御側はTLS復号(SNI+JA3)、DNS応答のレアリティ、ビーコン的な定間隔通信パターン(jitter)で炙り出します。

ネットは「通信パターンの異常」でほぼ全攻撃が見えるんだね😲

🔬 検証フェーズ:どうやって確かめる?

Wiresharkでフィルタ→「Follow TCP Stream」で会話単位に展開。Zeekで自動ログ化も強力🧪

pcapはCLI(tshark)で前処理→Wireshark GUIで深掘り、の二段構えが効率的。Suricata / Zeekで構造化ログ化すれば、SIEMで時系列横断もできます。

巨大pcapはtcpdump+filter+chunkで取り回しを良くする技も大事だね💡

# 上位ホスト抽出
tshark -r capture.pcap -q -z conv,ip

# DNSクエリ抽出
tshark -r capture.pcap -Y dns.flags.response==0 -T fields -e dns.qry.name | sort -u

# HTTPホスト + URI
tshark -r capture.pcap -Y http.request -T fields -e http.host -e http.request.uri

# Zeekで構造化ログ化
zeek -r capture.pcap

ネットで暴く攻撃トップ3

⚔️ 攻撃フェーズ:実際の手口

① C2 Beaconの規則性

Cobalt StrikeやBruteRatelの定期通信をJA3+間隔で同定。

② Exfiltrationの痕跡

DNS exfil(...base32...attacker.com)、HTTPSアップロード量で情報窃取を可視化

③ ラテラルムーブメント

SMB/RPC/RDPの内部横断通信を追跡し、感染経路をマップ化。

通信からの代表シグナル:①C2への定期ビーコン、②DNS Tunneling(長いサブドメインに符号化)、③HTTPSとSNIの不一致、④非標準ポートでのHTTP/SSH。

# DNS Tunneling検出(長すぎるサブドメインを検出)
tshark -r cap.pcap -Y "dns.qry.name && dns.flags.response==0" -T fields -e dns.qry.name | awk '{print length, $0}' | sort -rn | head

# JA3フィンガープリントでマルウェアTLSを識別
zeek -r cap.pcap LocalSite::ja3.zeek

TLS 1.3 + ECH(Encrypted Client Hello)が普及するとSNIすら見えなくなり、通信内容のメタ情報依存度が増えています🔒

ネット観測を活かす3点!🛡️

🛡️ 防御フェーズ:どう守る?

🌐 フルパケット or NetFlow保管

少なくとも境界はフルキャプチャ、内部はNetFlowで30日以上保管。事後追跡の生命線。

🔍 Zeek + SIEM統合

Zeek(旧Bro)で接続・ファイル・SSL情報をログ化、SIEMで横断検索。

🛡️ Egress Filtering

出口の通信を許可リスト式に。許可外IPへの直接接続を禁じればC2の足が止まる。

「パケットは嘘をつかない」を信じて投資する価値がある💪

ネットワーク側の防御は「フローを保全」「DNSを統制」「TLSのインスペクション」の三本柱。Zeek + Suricata + 全フロー保管が現代的なベースライン。

  • NetFlow / sFlowで全フローのメタデータを長期保存
  • Zeekでprotocol-aware構造化ログ化
  • Suricataでシグネチャ検知(ET Open等)
  • 社内DNSを集約し、DoHを企業ポリシーで封じる
  • 出口でTLS Decrypt(プロキシ)して中身検査
  • JA3 / JA4フィンガープリントでマルウェア通信を識別

🛡️ 今日からできる対策ツール

フォレンジックと同じくらい大事なのが「そもそも侵入されない」こと。🛡️ ソースネクストのセキュリティツールなら、買い切りで使えるタイプも多いので、「サブスク疲れ」している人に人気です。

PR / 広告

ソースネクスト

※ 上記は他社サービスへのリンクです。購入は各自でご判断ください。

⚠️ よくある落とし穴

  1. pcapのキャプチャ点が偏っていて、横展開トラフィックが見えない
  2. 保存期間が短く、APT級の長期活動が時系列で繋がらない
  3. TLS復号を入れない一方、SNI偽装に騙される
  4. DoH(Cloudflare 1.1.1.1等)を許可してDNSログをすり抜ける
  5. WiresharkのフォローTCPだけで判断し、フラグ分割を見逃す
  6. 5G/IPv6/QUIC環境への対応が遅れる

🧰 ツール早見表

ツール用途備考
Wireshark / tsharkpcap解析の標準Display Filter最強
Zeek (Bro)プロトコル別ログ生成IDSというより検知用基盤
Suricataシグネチャ・行動検知Multi-threadで高速
NetworkMinerpcapからファイル復元GUIで直感的
Arkime (Moloch)大量pcap全文検索SOC運用向け

🎓 本気で学びたい人へ

インシデントレスポンスやフォレンジックを職業として目指したい方へ。🎓 ササエルはインフラとセキュリティの両輪で学べるスクールです。

PR / 広告

ササエル

📚 もっと深く学びたい人へ

実際に手を動かして攻撃手法を体で覚えたいなら『7日間でハッキングをはじめる本 TryHackMe』がおすすめ📚

📚 次に読みたい

✍️ 学んだことを発信する

検証記録やレポートをオンラインでまとめるなら、ConoHa WINGのWordPressが手軽で便利です。

PR / 広告

ConoHa WING

⚖️ 大事なお約束

必ず守ってね

この記事の手法は、必ず自分の環境か、許可されたCTF・脆弱性報奨金プログラム(HackerOne、Bugcrowd等)で試してください。他人のサービスに無断で攻撃を仕掛けるのは不正アクセス禁止法違反、立派な犯罪です。学んだ知識は守る側で活かしましょう🤝

記事URLをコピーしました