Injection 大爆発
連休前だからかしらないが、中国から大量の SQL Injection を検知した。その際に IntruShield で検知した URL 要求や応答をお客様から一覧で見せて欲しいといわれたとき、簡単に出力するにはどうしたらいいのか。。。いろいろ考えてやったみた。その際にやったことをメモしておく。
ちなみに IntruShield のダンプデータ(セッションデータ) は Ethereal にて確認する。
まずは要求から
以上で要求は完了。次は応答を抜き出す。
- イベントを開き、フィルタをかけないで(全データ)を表示する
- フィルタをかける ->ip.dst == "送信元IP" and http
- 「File」→「Save As」→「Nameは適当に」→「Displayed」を選択→libpcap形式で保存
- 保存したファイルをテキストエディタで開く。テキストエディタは "置換" に正規表現が使え、grep ができるもの(秀丸推奨)
- 次の指定で"置換"
- 検索文字列:^.*HTTP
- 置換 :HTTP
- 500 Internal Server エラーの中に成功データがあり、かつMSSQLサーバのエラーだった、かつ日本語のエラーだった場合、次の指定で grep
- 検索文字列:構文エラー.*
- 次の指定で"置換"
- 検索文字列:^.*値
- 置換 : (空白)
- 次の指定で"置換"
- 検索文字列:から int データ型に変換できませんでした。</font>
- 置換 : (空白)
- 結果を保存する。
以上で応答も完了。
正規表現など使ったことがないので、先輩に聞いたり、調べながらやったりしたら思いのほか時間がかかった。しかし今回こうしてまとめられたので、実際にやるときはかなり早くまとめることが出来ると思う。また、検索文字列を変えれば別のことにも使えそうなので、時間かけたかいがあった、、、かな