| Webテクノロジー | 2004年7月20日 00:00 |
|
多目的スクリプト言語『PHP』に2つの脆弱性 著者: Ryan Naraine オリジナル版を読む ▼2004年7月20日 00:00 付の記事 ■海外internet.com発の記事 オープンソースの多目的スクリプト言語『PHP』に2つの脆弱性が見つかった。PHP を運用するサーバーに対して、任意のコード実行攻撃をしかけられる脆弱性と、クロスサイト スクリプティング問題を招きかねない脆弱性だ。PHP Group は、両脆弱性への対応を含む新版をすでに公開している。 両脆弱性は、『PHP 4.3.7』までのバージョンと、『PHP 5.0.0RC3』までのバージョンに存在する。13日に公開したバージョン5系列の正式版『PHP 5.0.0』には、該当の脆弱性は存在しない。 PHP Group は同じく13日に、バージョン4系列の新版『PHP 4.3.8』を公開した。こちらも該当の脆弱性に対する修正を施しており、PHP Group は新版へのアップグレードを強く推奨している。 セキュリティ対策会社 Secunia は、両脆弱性を合わせ、危険度を5段階中2番目に危険なレベルとして警告を出した。 両脆弱性は、ドイツのセキュリティ会社 e-matters の Stefan Esser 氏が、PHP のコードを見直していた最中に発見したもので、前もって通知を済ませ、14日に情報を公開した。 第1の脆弱性は、「memory_limit」を有効にしている PHP サーバーが、遠隔的な任意コード実行を許しかねないものだ。「memory_limit を再調査中に問題の脆弱性を見つけた。PHP には memory_limit による処理中断に対して安全ではない部分があり、該当部分で攻撃者が遠隔的に処理中断を引き起こせる。これを悪用すると、PHP サーバーに対して任意のコード実行を仕掛けることが可能になる」と Esser 氏は警告する。 Esser 氏は同脆弱性が、「悪用が簡単」でプラットフォームを問わないため、非常に危険と述べた。 もう1つの脆弱性は、PHP の「strip_tags()」関数に存在する。同関数はユーザーの入力を受け付けるサイトで、クロスサイト スクリプティング問題を防ぐため、ユーザーが入力したデータから指定外のタグを取り除く目的で用いるが、意図的にバイナリコードを挿入したタグを取り除くことができない。一部の Web ブラウザでは、バイナリコードを挿入したタグについて、意味のないタグとは解釈せず、バイナリ部分のみを取り除いて、正当なタグとして処理してしまう。サーバーが入力データから危険性のあるタグを除去するのに、strip_tags() 関数しか用いていない場合、この脆弱性を突けばクロスサイト スクリプティング問題を引き起こす攻撃が可能になるという。 |
| トップページ | 画面トップ |
|