12月 26

Microsoft IIS のセミコロンバグ検証メモ

Microsoft IISにファイル名の処理に脆弱性が存在し、ファイルの拡張子による制限を回避することが可能だそうです。
具体的には、「test.asp;.jpg」として脆弱性の存在するホストに保存すると
IISはこれを「test.asp」として解釈するいうものです。
ホストにファイルをアップロード可能であるようなWebアプリケーションが存在し
そのアップロード先に実行権限が与えられていた場合に
この手法を使ってファイルをアップロードすると、IISの実行権限で任意のコマンドを実行できてしまうというものです。

この脆弱性はIIS6と5に存在するそうですので
# 2009/12/27追記
# ココでは6.0以前、7.5以外は影響をうけるとありますね。
IIS6で任意のディレクトリの内容を表示することができるaspファイル「dir.asp」を「dir.asp;.jpg」として
アップロードし、実行可能かどうかという検証を行いました。

結果、アップロードしたファイルは「dir.asp」として任意のディレクトリを表示することが可能でした。

dirこのように攻撃を成功させるにはいくつかの条件が必要であるため
危険度は低いとも考えられますが、影響を受ける条件が揃った場合は、結構なインパクトだと思います。

現在のところ修正プログラムはリリースされていないため回避策は
Webアプリケーションで対応する場合には
ファイルアップロードを行うアプリ上でアップロードするファイル名を保存する際には名前をランダムなものにする。
システムで対応する場合には
アップロードファイル保存ディレクトリには実行権限を与えない。
などが考えられるかと思います。

ここまで書いて思ったのですが、この脆弱性はWebDAV経由からも利用できそうですね。


Copyright 2021. All rights reserved.

Posted 2009年12月26日 by ntsuji in category "exploit