Submit Search
Pcapngを読んでみる
9 likes
14,029 views
Y
Yagi Shinnosuke
pcap-ngのファイル形式と実例
Engineering
Read more
1 of 35
Download now
Downloaded 36 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Most read
15
16
17
Most read
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Most read
35
More Related Content
PDF
Wireshark だけに頼らない! パケット解析ツールの紹介
morihisa
PPTX
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
PPTX
VyOSで作るIPv4 Router/IPv6 Bridge
KLab Inc. / Tech
PDF
Scapyで作る・解析するパケット
Takaaki Hoyo
PPTX
HLSについて知っていることを話します
Moriyoshi Koizumi
PDF
SFUの話
tnoho
PDF
SAT/SMTソルバの仕組み
Masahiro Sakai
PPTX
分散システムについて語らせてくれ
Kumazaki Hiroki
Wireshark だけに頼らない! パケット解析ツールの紹介
morihisa
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
VyOSで作るIPv4 Router/IPv6 Bridge
KLab Inc. / Tech
Scapyで作る・解析するパケット
Takaaki Hoyo
HLSについて知っていることを話します
Moriyoshi Koizumi
SFUの話
tnoho
SAT/SMTソルバの仕組み
Masahiro Sakai
分散システムについて語らせてくれ
Kumazaki Hiroki
What's hot
(20)
PDF
目grep入門 +解説
murachue
PDF
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)
Kensuke Otsuki
ODP
Format string Attack
icchy
PDF
噛み砕いてKafka Streams #kafkajp
Yahoo!デベロッパーネットワーク
PDF
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
PDF
ワタシはSingletonがキライだ
Tetsuya Kaneuchi
PDF
分散システムの限界について知ろう
Shingo Omura
PDF
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
Preferred Networks
PDF
Protocol Buffers 入門
Yuichi Ito
PDF
パケットキャプチャの勘どころ Ssmjp 201501
稔 小林
PDF
機械学習モデルのサービングとは?
Sho Tanaka
PDF
オントロジーとは?
Kouji Kozaki
PDF
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
PDF
Rustに触れて私のPythonはどう変わったか
ShunsukeNakamura17
PDF
Apache Arrow - データ処理ツールの次世代プラットフォーム
Kouhei Sutou
PDF
Pythonによる黒魔術入門
大樹 小倉
PPTX
冬のLock free祭り safe
Kumazaki Hiroki
PDF
人生がときめくAPIテスト自動化 with Karate
Takanori Suzuki
PPTX
本当は恐ろしい分散システムの話
Kumazaki Hiroki
PDF
推薦アルゴリズムの今までとこれから
cyberagent
目grep入門 +解説
murachue
区間分割の仕方を最適化する動的計画法 (JOI 2021 夏季セミナー)
Kensuke Otsuki
Format string Attack
icchy
噛み砕いてKafka Streams #kafkajp
Yahoo!デベロッパーネットワーク
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
ワタシはSingletonがキライだ
Tetsuya Kaneuchi
分散システムの限界について知ろう
Shingo Omura
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
Preferred Networks
Protocol Buffers 入門
Yuichi Ito
パケットキャプチャの勘どころ Ssmjp 201501
稔 小林
機械学習モデルのサービングとは?
Sho Tanaka
オントロジーとは?
Kouji Kozaki
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
Rustに触れて私のPythonはどう変わったか
ShunsukeNakamura17
Apache Arrow - データ処理ツールの次世代プラットフォーム
Kouhei Sutou
Pythonによる黒魔術入門
大樹 小倉
冬のLock free祭り safe
Kumazaki Hiroki
人生がときめくAPIテスト自動化 with Karate
Takanori Suzuki
本当は恐ろしい分散システムの話
Kumazaki Hiroki
推薦アルゴリズムの今までとこれから
cyberagent
Ad
Similar to Pcapngを読んでみる
(20)
PDF
High performance python computing for data science
Takami Sato
PDF
Rdkitの紹介
Takayuki Serizawa
PDF
Pythonでパケット解析
euphoricwavism
PDF
import dpkt したよ #ssmjp 2014/02/28
th0x0472
PPTX
Seurity Camp Award 2016
slankdev
PDF
FPGAX6_hayashi
愛美 林
PDF
サーバ擬人化ユーザ会キックオフ資料 Slideshare ver
Seiichiro Ishida
PPT
Gr sakuraでtinet
Kazuhiro Takahashi
PDF
深層学習フレームワークChainerの特徴
Yuya Unno
PPTX
Fpgax20170924
Natsutani Minoru
PDF
CTF for ビギナーズ ネットワーク講習資料
SECCON Beginners
PDF
ChainerRL の学習済みモデルを gRPC 経由で使ってみる試み (+アルファ)
NVIDIA Japan
PDF
libpgenでパケット操作
slankdev
PDF
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
Akira Nakagawa
PDF
Seccamp 2016 チューター成果報告
slankdev
PPTX
PPTPの仕組みと接続時の注意点
Rintaro Sekino
PDF
Singularityで分散深層学習
Hitoshi Sato
PDF
Chainer でのプロファイリングをちょっと楽にする話
NVIDIA Japan
PDF
dkanのご紹介-150704CMSどうでしょう夏の陣
Kyoko Ohtagaki
KEY
ゆるかわPhp
Ryota Mochizuki
High performance python computing for data science
Takami Sato
Rdkitの紹介
Takayuki Serizawa
Pythonでパケット解析
euphoricwavism
import dpkt したよ #ssmjp 2014/02/28
th0x0472
Seurity Camp Award 2016
slankdev
FPGAX6_hayashi
愛美 林
サーバ擬人化ユーザ会キックオフ資料 Slideshare ver
Seiichiro Ishida
Gr sakuraでtinet
Kazuhiro Takahashi
深層学習フレームワークChainerの特徴
Yuya Unno
Fpgax20170924
Natsutani Minoru
CTF for ビギナーズ ネットワーク講習資料
SECCON Beginners
ChainerRL の学習済みモデルを gRPC 経由で使ってみる試み (+アルファ)
NVIDIA Japan
libpgenでパケット操作
slankdev
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
Akira Nakagawa
Seccamp 2016 チューター成果報告
slankdev
PPTPの仕組みと接続時の注意点
Rintaro Sekino
Singularityで分散深層学習
Hitoshi Sato
Chainer でのプロファイリングをちょっと楽にする話
NVIDIA Japan
dkanのご紹介-150704CMSどうでしょう夏の陣
Kyoko Ohtagaki
ゆるかわPhp
Ryota Mochizuki
Ad
Pcapngを読んでみる
1.
pcapngを読んでみる 27. Apr. 2015 Shinnosuke
Yagi @ネットワークパケットを読む会
2.
自己紹介 Shinnosuke Yagi twitter: @linus404 電話系SIでWi-Fi関連の案件 CTFでnetwork問題を担当 team:
ctpm
3.
はじめに pcapng つかってますか?
4.
はじめに 1. pcapng? 何それ食えるの? 2.
あえてpcap使います 3. Wiresharkのデフォルトなので一応。。。。 4. バリバリ使ってます。pcapには戻れない。
5.
pcap-ngとは? PCAP-NextGeneration 何が変わったのか 複数デバイスのキャプチャ結果を 1ファイルに纏められる コメント他、メタ情報が付けられる キャプチャ環境での名前解決結果を保持できる その他、解析ツール独自の拡張が可能 ほか、細かいところで解析に便利な工夫が多数。。。
6.
しかし・・・・
7.
pcapngの現状 ツールの対応状況が追いついていない Wiresharkの現状 https://wiki.wireshark.org/Development/PcapNg The current limitations
for pcapng format are: Only a single section Only blocks SHB, IDB, PB, EPB, SPB (others will be ignored) Lots of Options not implemented Writing files is mostly untested When merging files, mergecap doesn't retain each IDB's snaplen mergecap won't merge pcapng files with different encapsulations and intermixed timestamps というか放置状態・・・? defaultになったのは2012年 あまりアップデートはない
8.
pcapngの現状 世間でも冷遇されている http://pcapng.com のトップは pcapng→pcapのコンバート・・・
9.
pcapngの現状 世間でも冷遇されている http://pcapng.com のトップは pcapng→pcapのコンバート・・・
10.
そんな pcapng を読んでみましょう 案外、新たな発見があるかも?
11.
基本フォーマット 「ブロック」 単位で構成される Block Type: ブロックの種類(後述) Block Total
Length: ブロックの長さ。 Block Body: ブロックの中身(32bit単位にパディング) Block Total Length:ブロック末尾にもブロック長。ファイル末尾から探索するのに便利
12.
ブロックの種類 ブロック名 説明 Section Header
Block セクション全体を規定する情報を格納 Interface Description Block NWインターフェースの情報を格納 Enhanced Packet Block 個々のパケットに関する情報を格納 Simple Packet Block 個々のパケットに関する最低限の情報を格納 Name Resolution Block アドレスとホスト名の対応関係を格納 Interface Statistic Block 統計データを格納
13.
ファイル全体の構成 ファイルは1∼nのセクションからなる 各セクションの先頭はSession Header Block(SHB) ただし、現状Wiresharkでは1セクションのみ対応。
14.
Section Header Block Sectionの先頭にある必須ブロック ファイルの先頭に必ずある Block
Type: 0x0A0D0D0A エンディアンに依存せず同じ! Byte Order Magic: 0x1A2B3C4D リトル・ビッグエンディアンを判別 Section Length: セクションごとスキップする場合に使用。
15.
SHBの実例 以降すべて、Wiresharkでpcapngファイルを作った場合の例 現状Wireshark以外にpcapngを扱える(有名な)ツールがないので、 一般的なpcapngファイルと思ってたぶんOK Block Type Byte
Order Magic Options Block Length
16.
Interface Description Block NW
interfaceの情報を格納 1セクションに複数のIDBを格納できる リンクタイプ、キャプチャ長は必須 オプションフィールドでデバイス名などを格納可能 https://www.winpcap.org/ntar/draft/PCAP-DumpFileFormat.html#sectionidb
17.
IDBの実例 IF名はOSによってまちまち 実行コマンド ( snaplen:
0x200, filter: icmp ) tshark -s 512 -w file.pcapng icmp Snaplen Ifname Block Length Link Type Block Type Filter
18.
Enhanced Packet Block パケット本体を格納 InterfaceID、オプションフィールド以外はpcapと大差なし コメント等をオプションでつけられる https://www.winpcap.org/ntar/draft/PCAP-DumpFileFormat.html#sectionepb
19.
EPBの実例 Wireshark で保存するとEPBで格納される 取得環境: snaplen
255(0xff) で、1066(0x042A) octet のパケットをキャプチャ Block Type Block Length PacketData Capture Len Packet Len
20.
Simple Packet Block EPBよりも情報が少ない → 速度、サイズを重視する場合に使用 EBPとSPBは同一ファイル中で切り替え可能 Interface
IDがないので、単一IFの場合にのみ利用可能
21.
Name Resolution Block 名前解決結果を格納 解決にかかる時間を節約 キャプチャ環境と解析環境の名前空間が異なる場合もOK https://www.winpcap.org/ntar/draft/PCAP-DumpFileFormat.html#sectionnrb
22.
NRBの実例 NRBを含むキャプチャ(Wiresharkで名前解決すると付与される) 54.65.213.54 Block Type ホスト名
23.
Interface Statistics Block Interfaceごとの統計情報 https://www.winpcap.org/ntar/draft/PCAP-DumpFileFormat.html#sectionisb キャプチャ開始、終了時刻 受信、Dropパケット、フィルタ適合パケット
24.
生のpcapngを見てみましょう
25.
pcapngを読むときのコツ 1.まずセッションの先頭を見つける(0A0D0D0Aを探す。たいていは先頭のみ。) 2.次にエンディアンを把握する(1A2B3C4Dか、4D3C2B1Aか) 3.ブロックの始まりと終わりを見つける(冒頭と末尾にあるLengthを目印に) 4.末尾から読むほうが楽な場合もあり(ブロック末尾のLengthがすごく便利)
26.
DEMO
27.
Case Study
28.
エンディアン リトルエンディアンのSHB ビッグエンディアンSHB
29.
OSの違い∼Windows∼ Windows 8.1 のSHBとIDB
Option 03:SHB_OS SHB IDB Option 02:IF_NAME Option 0C:IF_OS Option 04:SHB_UserAppl
30.
OSの違い∼MacOS∼ MacOS Yosemite のSHBとIDB
Option 03:SHB_OS Option 04:SHB_UserAppl SHB IDB Option 02:IF_NAME Option 0C:IF_OS
31.
OSの違い∼Linux∼ Ubuntu 13.10 のSHBとIDB
Option 03:SHB_OS Option 04:SHB_UserAppl SHB IDB Option 02:IF_NAME Option 0C:IF_OS
32.
複数IF 複数IFキャプチャした場合のIDB
33.
複数IF 複数IFキャプチャした場合のEPB Interface ID が0x00000000 Interface
ID が0x00000002
34.
おわりに pcapよりも読みやすい ブロック単位でまとめられているので情報を探しやすい 慣れるとブロックの開始、終了がすぐわかるので情報を把握しやすい 特に後ろから3番目のパケットとかはすぐ見つけられる パケットの中身の解釈はpcapと同じ 扱えるライブラリは? libpcapは対応とうたっているが、リファレンスでは未言及 NTAR -Network Trace
Archival and Retrieval Library- https://www.winpcap.org/ntar/ Python Pcap-ng https://github.com/rshk/python-pcapng 読み出しのみ対応。書き出しは不可。 情報を隠すならpcapng CTF向け? Wiresharkが識別できない部分にフラグを挿入されたら気づけないかも
35.
omake pcapNGでCTF Level1 http://goo.gl/uITkTU Level2 http://goo.gl/2Qio7s Level3 http://goo.gl/QNopW2
Download