セキュリティホールの確認
2008年05月01日 01:01
他のサイトでは、一つ一つの記事のボリュームや調査・勉強が必要な周辺知識が多く、なかなか書き継げないでいます。そこで、小ネタをこちらに書いてみようと思います。
まず会社でもやってるセキュリティホール・チェックですが、これは単純にセキュリティ関連のサイトで公開されている RSS ファイルを Google Reader で拾っています。WordPress であれば、殆どの場合は SecurityFocus の RSS でよいでしょう。サイトの見方としては、例として WordPress Download Monitor Plugin ‘id’ Parameter SQL Injection Vulnerability というページを見ると、まず “info” のタブで脆弱性の概要が説明されています。各項目は、
Bugtraq ID: 28975(SecurityFocus で使っている通し番号)
Class: Input Validation Error(脆弱性の種別。これは入力値をチェックする処理系にエラーがあるということ)
CVE:(Common Vulnerabilities and Exposures Number。MITRE社が公開しているセキュリティ情報の通し番号)
Remote: Yes(遠隔攻撃の可否)
Local: No(ローカル攻撃の可否)
Published: Apr 28 2008 12:00AM(公開日時)
Updated: Apr 29 2008 02:36PM(更新日時)
Credit: Dino Covotsos and Charlton Smith(報告者)
Vulnerable: WordPress Wordpress Download Monitor plugin 2.0.6(脆弱性が確認された箇所・プログラム)
Not Vulnerable: WordPress Wordpress Download Monitor plugin 2.0.8(影響を受けない条件。)
となっており、WordPress の Download Monitor というプラグインの 2.0.6 以前を使っている場合はリモートから攻撃される恐れがあり、2.0.8 以降を使っていれば問題がないということです。
次のタブは “discussion” になっていて、受験英語では「議論」と訳すことも多いのですが、日本語で「議論」と言うと「誰かと何かを論じ合う」という意味になってしまうので、理数系の学術論文などでは「考察」と訳すことが多いです。要するにこの脆弱性について、原因や対策を検討している文章ですね。
そして “exploit” は脆弱性を突く攻撃パターンの紹介なのですが、そのまま攻撃に使えるコードを公開することは殆どありません(すぐに試してみようとする人がいるからです)。たいていはヒントのようなものだけを出しておいて、開発者に対しては具体的にどういうパターンで攻撃できるかを通知しているわけです。もっとも、わざと攻撃パターンを開発者に通知しないでおいて、セキュアプログラミングのスキルが低いことに警告を発する意味で攻撃パターンの公開を保留する場合もあります。今回の事例では、「攻撃者はブラウザ経由で攻撃できる(An attacker can exploit this issue via a browser)」とだけ書いているので、開発者はフォームやアドレスバーを経由して入力値を送信するというパターンを調べてから対策を立てます。
この次は “solution” となっていて解決方法が述べられていますが、こちらも攻撃パターンを推測されないように、あからさまな対策方法は公開しません。今回も、2.0.8 で対策が打たれたけれども、シマンテックはまだ認識していないので(恐らく十分な対策として認めていないと思われます)、開発者に問い合わせて下さいとだけあります。
そうして最後に、参照先としてプラグインのページと WordPress のサイトが挙がっています。だいたい、これらをざっと見て、自分が業務やプライベートで使っているアプリケーションかどうかを確認するわけです。会社では WordPress に限りませんので、他のセキュリティ関連サイトも RSS を取得して毎日チェックしています。国内外を合わせて 20 サイトくらいをチェックしていますが、専任であればもっとたくさん確認しているでしょう(僕は OS 関連のサイトは殆どチェックしていません)。自社の業務に関係がありそうな場合は、全社向けにアナウンスして、Word などのデスクトップアプリケーションではなく、MySQL などの開発・ネットワーク系のアプリケーションなら、システム部のメーリングリストにアナウンスしたりもします。
