WebページのURLと、サーバのファイル一式が与えられた。
Webページにアクセスすると、IP addressの入力欄とcheckボタンがあった。
入力欄に 127.0.0.1; ls
と入力してcheckボタンを押すと、「Invalid IP address」と表示された。
入力欄に 127.0.0.1
と入力してcheckボタンを押すと通信が行われ、要求ペイロードは以下のものだった。
An URL of a web page and files for the server were given.
An input field for "IP address" and a "check" button were on the web page.
When I entered 127.0.0.1; ls
to the field and hit the "check" button, a string "Invalid IP address" appeared.
Checking with the Developer Tool on
Entering 127.0.0.1
to the field and hitting the "check" button, a communication occured and it had this request payload:
これを
I changed this to
に「編集して再送信」すると、レスポンスにls
コマンドの出力が出るようだった。
さらに、配布されたファイル中の Dockerfile
を読むと、ファイル /flag_(ランダム文字列).txt
にflagを書き込んでいるようだった。
そこで、要求ボディを以下のものに「編集して再送信」することで、flagが得られた。
and performed "edit and resend". As a result, the response looked containing the output of the ls
commnd.
Here, I checked Dockerfile
in the given files and found that the flag looks written to a file /flag_(a random string).txt
.
I obtained the flag by sending a request with this request body via "edit and resend":