ASP.NET の脆弱性?
2004年10月7日(木曜日)
ASP.NET の脆弱性?
更新: 2005年2月10日
「報告された Microsoft ASP.NET の脆弱性に関する情報 (www.microsoft.com)」って良く意味が分からないのですが、「ASP.NET の正規化の問題をプログラムによって確認する方法 (support.microsoft.com)」ではまず "\" をサニタイズしているようですので、\ と / を正規化するあたりに何かあるのかも。
ASP.NET では、たとえば http://……/%5c/test.aspx なんてのをリクエストしても http://……/test.aspx が何事もなく実行されるようになっていて、Request.Path やら Request.PhysicalPath にも何事もなかったかのように /test.aspx なり c:\……\test.aspx なりが格納されています。Request.Url.ToString() も http://……/test.aspx となっていて、いずれも %5c はどこかに消え去っています。
つまり ASP.NET では URL がプログラムに渡る前の前処理として URL を正規化していて、よけいなバックスラッシュなどは消えるようになっているのです。今回の話は、このどこかに穴があってバックスラッシュが (あるいは他のヤバイ文字が) 貫通してくるという話なのでしょうか?
ともあれ続報待ちな感じですね。
※2005-02-10 追記: 修正されました。「ASP.NET パス検証の脆弱性 MS05-004 (www.microsoft.com)」
- 「ASP.NET の脆弱性?」にコメントを書く
- 前(古い): もりもり修正
- 次(新しい): チャレンジ・レスポンスではパスワードが送られるか?