global.asax のそれは不十分なんだって……
2004年10月18日(月曜日)
global.asax のそれは不十分なんだって……
更新: 2005年2月10日
IT Pro (itpro.nikkeibp.co.jp) に、ASP.NET の脆弱性関連の記事が出ていますが……。
マイクロソフトは,おそらく「Webサーバー管理者の中には,ソースコードを読めない人がいる」と判断し,2日後に,公開したソースコードを実装した修正パッチ(Microsoft.Web.ValidatePathModule.dll)を用意したものと思われます。
以上、IT ProのWindowsユーザーのためのワンポイント・レッスン 第44回 : IT Pro 1週間で学ぶIT基礎の基礎 より
いやいや、ValidatePathModule はそのコードの実装ではありません。global.asax にそのコードを追加しても exploit は通ってしまいます (ASP.NET の脆弱性!参照) が、ValidatePathModule をインストールすれば exploit が通らなくなります (少なくとも私が試した範囲では通りませんでした)。global.asax でのサニタイズはこの問題の対策としては不十分で、対策には ValidatePathModule のインストールが必要だということです。
※なお、このサーバにはあえて ValidatePathModule はインストールしてありません。
……というようなことがちゃんとアナウンスされていないから誤解を招くのだろうなぁ。まあ、
さらに情報やリソースを公開できるようになれば、順次このページを更新する予定です。
(~中略~)
この種類のセキュリティ問題からお客様を保護するためのガイダンスの他に、マイクロソフトは、ASP.NET にセキュリティ更新プログラムを提供するための作業を行っています。その更新プログラムにより、お客様に追加の保護策が提供されます。マイクロソフトは、その更新プログラムの展開のための品質のレベルが適切なものになった後、その更新プログラムをリリースする予定です。
ということなので、これは Microsoft としてもまだ暫定情報という扱いなのでしょう。状況を整理すると、
- Microsoft はこの脆弱性情報を認知している
- 問題を緩和する要素として ValidatePathModule がリリースされている (しかしこれはパッチではない)
- パッチは準備中 (まだ出ていない)
- それはそれとして、global.asax で URL をサニタイズすることを推奨
という感じかと。
記事では ValidatePathModule をパッチとして紹介していますが、ValidatePathModule は ASP.NET 用の URL Scan のようなもので、この問題の本質を解決しているわけではありません。上記引用部からしてパッチは別途出る予定だと言っていますし、それはそれで適用する必要があるでしょう。Code Red は URL Scan で防げますが、やっぱり MS01-033 は当てないとね……ということで。
※2005-02-10 追記: 修正されました。「ASP.NET パス検証の脆弱性 MS05-004 (www.microsoft.com)」
- 「global.asax のそれは不十分なんだって……」にコメントを書く
- 前(古い): 脆弱性関連情報に関する届出状況
- 次(新しい): 新タイプの詐欺サイト?