全3571文字
PR

 ネットワークを流れるパケットをキャプチャーして収集し、Pythonとリレーショナルデータベースを用いて精度よく解析するための実践的なテクニックを紹介する本特集。第2回で暗号化通信のパケットキャプチャーについて「全く知らない外国語の会話を近くで聞いているのと同じようなもの」と説明しました。交わされている言葉の意味が分からなくても言葉のキャッチボールがどのような形で成立しているか、どの程度の量の情報がやり取りされているかは把握できます。第8回はSSHに代表されるインタラクティブなターミナル通信を可視化する手法を解説します。

第2回 Wiresharkでできないことができる、パケット解析×プログラミング

 第7回のパケット分析では、暗号化されたトラフィックを時系列にスライスして通信量を可視化しました。そうすることでトラフィックの特徴をつかむテクニックを紹介しました。ここで分析したトラフィックはファイル転送を中心としたオーソドックスなHTTPSの通信でした。

第7回 トラフィックを俯瞰でとらえる、パケットの流れを読みファイル転送を見つける方法

 このトラフィックを俯瞰(ふかん)でとらえると、一定の大きさのデータのかたまりを伝送する通信と見なせます。一方からのリクエストに対してあらかじめ用意されたデータを送信するため、どこまで受け取ったかを確認するやり取り以外は基本的に一方通行になります。

 他のパターンの通信はどうなるでしょうか。例えばコマンドを入力して応答を受け取る通信は、一方通行のファイル転送とは違う形をしているはずです。SSHとファイル転送とのはっきりとした違いが可視化できれば、ポート番号の偽装の検出や、SSHの通信の途中に挟まれるSCP(Secure Copy Protocol)による通信といったファイル転送部分だけの検出などができる可能性があります。

 こうした形でネットワークトラフィックの分析を進めつつ、コミュニケーションを取れば、ユーザーの意図や背景を知ることによってセキュリティー向上を意図した施策などが的を射たものになるはずです。