プロフィール

大山恵弘

  • Author:大山恵弘
  • 公式なサイトはこちら

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

ブロとも申請フォーム

ブログ内検索

RSSフィード

リンク

FC2カウンター

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【プロファイル】 Framework for Instruction-level Tracing and Analysis of Program Executions 【instrumentation】

In VEE 2006.
http://www.veeconference.org/vee06/

ユーザプログラムの完全トレースの記録と決定的再実行(シミュレーション)を可能にするシステム。命令レベルでトレース/再実行/解析ができる。

タイムトラベルデバッガでデバッグできるツールあり。データ局所性解析ツールあり。

バイナリ変換とインタープリテーションを組み合わせて実装。再実行に必要な情報を集めるためのcallbackをアプリケーションに挿入する。決定的再実行に影響を与える外部との相互作用は、記録しておく(時刻取得命令の返り値とか)。

オーバヘッドは微妙(平均トレースオーバヘッドは11倍!再実行オーバヘッドはさらにその3、4倍!)。トレースのサイズは、新方式によってかなり圧縮されている(1命令あたりのビット数が0.5くらい)。

自己改変コードにも対応。マルチスレッド、マルチプロセッサにも対応。キャラメルだけでも十分なのに、おまけ2個ついてますみたいな。この実装の馬力はすごい。

トレースの圧縮と聞くとまず私はWPPが浮かぶんですが、WPPとこの研究てどんな関係にあるんでしょうね(bibには挙げられているが、関連研究の章では比較されてないみたい)。もちろん、再実行するとかバイナリ変換するとかの点で、差分ありまくりなわけですけど、純粋に圧縮手法の部分だけを比較したらどうなのかなって思って。

あとやっぱQEMUとかbochsとの関係も気になるなあ。
スポンサーサイト

【異常検知】 Anomaly Detection of Web-based Attacks 【Webアプリケーション】

In CCS '03.
http://doi.acm.org/10.1145/948109.948144

Webアプリケーションのための学習ベース異常検知システムの提案。

Webサーバのアクセスログが対象。各要求に異常スコアを与える。
複数の異常検知手法による異常スコアを重みづけ加算して、全体の異常スコアを決定する。

述べられている手法は6個。

その1。属性の長さ。属性の文字列の長さは、ふつう、固定長だったり、短かかったり、そう大きく変化しない。正常な要求の属性文字列はだいたい標準的な分散にしたがう。変に長い文字列は攻撃の可能性が高い。

その2。属性の文字列の分散。属性に読めない文字が含まれてるのはあやしいとか、アルファベットの各文字の出現確率を利用するとか。

その3。正常な属性の構造を推論。パラメタの構造を確率的正規文法で表現。そして非決定性有限オートマトンを作る。

その4。値集合から選ぶタイプの属性については、ちゃんとその集合の中の値になっているかどうかをチェック。

その5。属性があるかないかをチェック。攻撃者による要求は、脆弱性に関係ない属性を省略して埋めないことがあるので。

その6。属性の順番をチェック。その5と関係。

一つ一つはスタンダードな方法だし小ネタという気がするが、たくさん集めて組み合わせて、実験もしてるあたりがすごいかも。合わせ技一本か。文章も読みやすいと思う。

| ホーム |


 BLOG TOP 


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。