読者の皆さんは,7月に「Month of Browser Bugs(ブラウザ・バグ月間)」と題して,1日1個ずつWebブラウザのバグを公開すると宣言したセキュリティ研究者H.D. Moore氏のことをご記憶だろうか(関連記事:「ブラウザのセキュリティ・ホールを毎日1件公開する」と研究者が宣言,既に3件が公開)。Moore氏はそもそも,セキュリティ・ホール検証ツール「Metasploit Toolkit」の開発者として著名であるが,氏はこれ以外にも有用なツールをいくつか開発している「AxMan」と「Malware Search」だ。

 AxManはMoore氏によると,「ブラウザ・バグ月間中に公開されたほぼすべてのActiveXの欠陥を発見し,バグを取り除くのに使われた」そうである。AxManはActiveXのfuzzer(ぜい弱性検知ツール)であり,Internet Explorer (IE)を通してCOMオブジェクトのバグを見つけられる。fuzzerは,欠陥やぜい弱性を見つけるために,ランダムなデータをプログラムやオブジェクトに注入するプログラムだ。Moore氏は先日,AxManのパッケージを無料ダウンロードとして公開した。氏のWebサイト「AxMan ActiveX Fuzzer」で,試用版を入手できる。

 一方のMalware Searchは,Googleクエリを使ってインターネット上に存在する既知マルウエアと,マルウエアの特徴(fingerprints)を検索できるツールである。マルウエアが発見された日時やコード・イメージのサイズ,侵入経路,コード自体のサイズなどを調べられる。同ツールはRubyで書かれたスクリプト・セットで構成されており,数十の署名付きデータベースが付属する。スクリプトの1つを使うと,新しいマルウエア・ファイルがネットワークに出現したときに,ユーザーはマルウエアを登録できる。Malware Searchはこちらの「Malware」というサイトで利用できる。

 Emmanouel Kellinis氏が公開する別の検索ツール「Bugle」は,Googleがインデックス化したソース・コードに,セキュリティ関連のバグがないかどうかを調べる検索エンジン・クエリのリストである。Bugleは,問題のある特定のファンクションを見つける際に調べるファイルの種類を指定するために,クエリ内のファンクション・コールとともに,「filetype(ファイル・タイプ)」パラメータも使用する。

 例えば,あるクエリは.javaファイルのファンクション・コール「executequery request.getparameter」を探すことによって,SQLインジェクションのぜい弱性がないか調べている。別のクエリは,.aspファイルの「response.write request.form」を探すことによって,Active Server Pages(ASP)アプリケーションに,クロスサイト・スクリプティングのぜい弱性がないか調べている。本記事の執筆中に調べたところ,1つ目の例では452個,2つ目の例では149個の結果が,それぞれGoogleから返ってきた。

 検索結果として返ってきたすべてのコードにぜい弱性が含まれているわけではない,ということは覚えておいてほしい。ぜい弱性を持つ可能性があるかどうかは通常,開発者がどのようにコードを実装したか,ということにかかっている。従って,判断を下すには,コードの書き方について少々理解しておく必要があるだろう。

 Kellinis氏は一般の人々に,この他のクエリを開発して,Bugleのリストに追加できるよう提出してほしいと呼びかけている。ぜい弱性を探すのが好きな人や,自分が興味のあるアプリケーションにぜい弱性が含まれているか知りたい人は,Bugleをブックマークに登録して,必要なときに参考にすればいいだろう。