journey

問題文

色々と試してはいるものの、やはり正しいゴールに辿りつけないんだ。 ゴールに辿りつけばフラグが得られるらしいけど、どうすれば良いんだろう。

フラグの形式: TsukuCTF{[a-zA-Z0-9_!?.]*}

解法

/goal に対して Referer.../problems/journey/railway/... となるパスを含めて CONNECT メソッドでリクエストを飛ばす。

curl -H 'Referer: https://tsukuctf.sechack365.com/problems/journey/railway/1' -X CONNECT https://tsukuctf.sechack365.com/problems/journey/goal

GoのSolver

解法に至るまでの思考

  1. statusを確認しろと書かれているので、Status Codeを確認するとMethod Not Allowedになっている
  2. OPTIONSメソッドで利用可能なメソッドを確認した上で全て試すと、CONNECTメソッドの時だけどこから来たの?みたいなことが書かれてる
  3. リダイレクト結果に応じて、それっぽいRefererをつけてリクエストする

所感

Status Codeとリクエストメソッドについて調べてもらう機会になればと思い作問しました。最終的にやるだけ問題になってしまいましたが、少しでも学びになっていれば幸いです。

FLAG

TsukuCTF{H0w_wa5_y0ur_j0urney?}
© 2021, SecHack365-Fans All Right Reserved.