じつは論文サーベイとかまだ一度もしてません
なーんか先が見えなくて怖いので整理も兼ねて延々書いてみる。
明日(もう今日)のディスカッションの準備の意味も含めて。
目的
最終目的は、偽装とか暗号化とかされた条件下でもサービスを特定可能なぐらいロバストな監視システムをつくること
もうちょい詳しく言うと、トランスポート層以上の内容(ポート番号とかペイロード中のシグネチャとか)なんて暗号化したら見えないしその気になれば偽れるから、そこらへん使わずに通信監視できないかなぁってこと。
もっと端的に言えばネットワーク層以下の情報で通信を監視して、こいつport80でhttpの振りしてるけどp2pだなとかチェックする手法の考案。
課題設定
いまいちはっきりしない。
とりあえずのところは
ネットワーク層以下(ぷらすちょっぴりトランスポート層)の情報だけでアプリケーション層で動いてるサービスを弁別する
ってのが目標。
でもまだどんな環境・前提条件で行うのかははっきりしていない罠
とりあえずいくつか確認したい点があるので列挙
監視環境
選択肢は一応二つ
・特定のホストを監視、そいつで動いてるサービスを特定
・ネットワークのどっかを流れてるトラフィックを監視 そこに含まれてるのがどんなアプリケーションのフローなのかを特定する
ぶっちゃけ後者とか鬼過ぎるので前者がいいな。
前提条件
思いつく疑問点を全部列挙
・監視対象のトラフィックはフロー毎に分類されているものとして考えていいのか
でもフローってトランスポート層より上の概念だから本末転倒な気もする罠。
だいたいIPSecとか使われてる条件下でフローとか割れられるのか怪しい。
・unknownなサービスが含まれるフローを分析して、「こいつが含まれる」と認識するのが目的なのか、既知のサービスが含まれている(はずの)サービスを分析して「これちがうんじゃね?」というのが目的なのか
今すぐに影響する話じゃないけどいずれは考えなきゃってことでメモ
・そのたまた思いついたら書く
いがいと少ないな。
まあいずれにせよ思いつく限りのコトを試して特徴くさいモノをさがすしかないんだけどね。