はじめに
アドベントカレンダーというものに参加したくなり、今回 N予備校受講者 Advent Calendar2020
の 8日目 に参加させていただくことにしました。
今回は先日開催されていた、taskCTF20 の Write-up を投稿させていただきたいと思います
よろしくお願いします
自己紹介
はじめまして! プログラミングを勉強している yu1k です
N予備校との関わりについて
去年の3月くらいからN予備校のプログラミング入門コースを受講して、プログラミングを勉強させていただいています。
最初はパソコンを触り始めたばかりでタイピングもあまり慣れていないころからはじめました。
N予備校を見ながら GitHub のアカウントを作成したり、N予備校のプログラミングコンテストに参加して健闘賞(2019夏, 2019冬, 2020夏)をいただいたり、外部の勉強会などにも参加させていただきながら勉強し、いまはそこそこパソコンについて慣れてきたかなと思います。
教材の内容もパソコン初心者にもわかりやすい内容で、すごく助かりました。ありがとうございます。
taskCTFとは?
Tasker さんが誕生日に開催されていた CTF です。
以下ツイートを引用。
++age;
— Tasker (@task4233) December 4, 2020
今年も, 誕生日なので明日の1日限定でCTFを開催します!https://t.co/T5sIFMdyXL
バタバタしてて今回はWeb問とMisc問のみです。
対象者は超初心者~中級者になります。
お楽しみに~
参加結果
自分は チーム yu1k で参加し、222ポイントを得ることができ、48チーム中 24位でした。
write-up
以下解けた問題の write-up です。
[Misc] welcome
楽しんでいってね!
flagはNotificationsのページに書かれているよ!
2020-12-06 12:03追記: notificationsは右上のベルマークのページです。
https://score.task4233.dev/notifications
解き方
https://score.task4233.dev/notifications
に書いてありました。
Flag:
taskctf{g00d_luck_h4ve_fun}
[Misc] OSINT 2
友人が迷ってよく分からない駅で下車してしまったらしい。
駅前の画像を送ってくれたから, どこの駅前か特定してほしい。 駅名は全て漢字です。
フラグの形式: taskctf{駅名}
2020-12-06 12:43追記: 駅名は「駅」という文字までを含みます。
解き方
画像が渡される。画像に あべ歯科クリニック と 道路標識がある。標識に 横浜 の文字がある。そこで、横浜 あべ歯科クリニック とGoogleで検索する。
横浜のあべ歯科クリニックを見つけた。画像にあったあべ歯科クリニックへの案内の方向と、標識の方角と大体の場所を予想し、Googleストリートビューでその場所を目視で確認する。
そうすると画像の場所を見つけることができた。近くの駅は大船駅だったのでそれがフラグです。
Flag:
taskctf{大船駅}
[Web] Evil Eval
シーザー暗号の次は, base64をデコードするページを実装したらしい。
とはいえ, この実装ってあまり良くないんじゃ......
flag.txtが同じディレクトリにあるらしいから, それを読みだしてこの実装の危険性を教えてあげて。
http://34.82.49.144:3337/
解き方
http://34.82.49.144:3337/flag.txt
にアクセスしたらパーミッションの設定ミスのようでフラグが見えました。
Flag:
taskctf{eval_1s_b4d_h4bit}
[Web] Caesar Cipher Translator
シーザー暗号をエンコードするページを作成途中なのですが, どうもこのままだとマズいと先輩に指摘されました。
どうもXSSというのがあるようです。本当に実施できるか信じられないので, 実際にinjectedという文字列を出してもらえますか?
http://34.82.49.144:3333/
2020-12-06 01:37追記:
<script>タグを用いたXSSだとflagが出ない場合があります。 その際はDMでご連絡いただくか, 他の方法を試してみてください。
解き方
ソースのJavaScriptを見てみると、alert();が実行できそうでした。
しかし、 script タグを用いたalert();を実行してみても、うまく XSS ができません。
そこで、
javascript:alert("injected")
を実行するとフラグが表示されました。
Flag:
taskctf{n1ce_inject10n!}
[Misc] アンケート
お疲れ様でした!
振り返りのために, 今回のCTFに関する簡単なアンケートにご協力ください。
なお, この問題は0点問題なので, 回答は必須ではありません。
解き方
アンケートに回答すると、フラグを得られる。
(スコアサーバが閉じられた後にアンケートに回答したので、ジャッジを通していません・・。多分あってると思います。)
Flag:
taskctf{Th4nk_u_f0r_pl4ying!}
まとめ
Taskerさん、お誕生日おめでとうございます!
楽しいコンテストをありがとうございました。
また、アドベントカレンダー に参加させてくださった koeda 先生やN予備校の皆さんありがとうございました。