Más contenido relacionado La actualidad más candente (20) Similar a OSC 2016 Hokkaido セミナー資料 (20) OSC 2016 Hokkaido セミナー資料2. 自己紹介
o すらんく
o 理工学部 3年生
o Twitter: @slankdev
o Github: slankdev
o セキュリティ・キャンプ {2015修了,2016チューター}
o パケットとOSと開発を愛する
oゆる〜い感じに楽しくやらせていただきます
oどうぞお付き合いお願いいたします m(. .)m
6/18/16 osc2016do 2
3. Agenda
1. パケット解析の課題
2. LibPGENの紹介
3. LibPGENを使用して
新たなプロトコルを解析するプログラムを実装
oLinux環境がある方はデモの作業を一緒にやりましょう!
以下URLを参照ください!
ohttp://blog.slankdev.net/2016/06/17/osc2016do
6/18/16 osc2016do 3
14. LibPGENの設定
6/18/16 osc2016do 14
o 大きく分けて三つのコンポーネントに分かれてます
• IO
• データをネットワークインターフェースやpcap, pcapngファイルに
入出力するクラス群
• pgen::net_stream, pgen::pcap_stream …etc
• Core
• パケットやアドレスのバイナリを解析したり、変更したりする部分
• pgen::ethernet, pgen::ip, …etc
• Module
• Core, IOを使って書かれたモジュール群
• めんどくさい作業をまとめてやってくれるクラスや関数群
• 説明は省略
15. パケットクラス in COREコンポーネント
6/18/16 osc2016do 15
o使用用途
◦ ゼロからパケットのバイナリを
組み立て
◦ 既存のバイナリを変更
◦ 長さを変えたり途中に追加な
ど柔軟に
o設計部分は後述
Packet Class
ffff ffff ffff 703e aceb 27a5 0806 0001
0800 0604 0001 703e aceb 27a5 0000 0000
0000 0000 0000 0ad2 7c7e 5b2a 0100 2d1a
ac19 1bff ffff 0000 0000 0000
aaaa aaaa aaaa 703e aceb 27a5 0806 0001
0800 0604 0002 703e aceb 27a5 0000 0000
0000 0000 0000 0ad2 7c7e 5b2a 0100 2d1a
ac19 1bff ffff 0000 0000 0000 4920 6c6f
7665 2070 6163 6b65 742e
50. 6/18/16 osc2016do 50
aabb ccdd eeff 0011 2233 4455 0800 4500
2800 0001 0000 4006 b9a2 c0a8 b302 c0a8
6501 3039 3039 0000 0000 0000 0000 5001
2000 961c 0000
ありがとうございました