S.H.E.L.L. CTF 2021 Writeup
Contents
URL: https://shellctf.games/challenges
1380点を獲得し、最終順位は116位でした。
以下はチャレンジのリストです。
[Web]: Under Development (50 points)
Challenge
http://3.142.122.1:8885/
Solution
HTTPレスポンスを見ると、以下のCookieがセットされるのがわかります。
HTTP/1.1 200 OK X-Powered-By: Express Set-Cookie: privilege=dXNlcg%3D%3D; Path=/ <--- Accept-Ranges: bytes Cache-Control: public, max-age=0 Last-Modified: Sun, 30 May 2021 06:01:58 GMT ETag: W/"15b-179bbdd5ff0" Content-Type: text/html; charset=UTF-8 Content-Length: 347 Date: Sat, 05 Jun 2021 08:11:22 GMT Connection: close
%3D%3D は ==
なので、Base64できそうです。デコードしたところ、user
でした。
admin
をBase64エンコードして、HTTPリクエストのCookieにセットするだけです。
Flag: SHELL{0NLY_0R30_8e1a91a632ecaf2dd6026c943eb3ed1e}
[Web]: Collide (100 points)
Challenge
http://3.142.122.1:9335/
Solution
アクセスすると、ソースコードが表示されます。
|
|
“sha256 collision CTF” をキーワードでググったら、同じ過去問を見つけてしまったんですよね。
https://ctftime.org/task/12375
以下でアクセスするとフラグが取れます。
http://3.142.122.1:9335/?shell[0]=0&pwn[1]=0
Flag: SHELL{1nj3ct_&_coll1d3_9d25f1cfdeb38a404b6e8584bec7a319}
[Web]: login (200 points)
Challenge
Sam really need to get past this login portal but isn’t able too, can you help him? http://3.142.122.1:8889/
Solution
main.jsを使って、ローカルで認証が走ります。
結構複雑なコードのわりにSolveした人が多かったので、なんか簡単な解き方がありそう。
|
|
開催日初日には、`9ef71a8cd681a813cfd377817e9a08e5`をググっても何もヒットしなかったんですが、2日目にググったら`ir0nm4n`がヒットしました。
ということで、din_djarin11 / ir0nm4n でログインするだけです。
Flag: SHELL{th1s_i5_th3_wa7_845ad42f4480104b698c1e168d29b739}
[Crypto]: Subsi (50 points)
Challenge
cipher : HITSS{5X65Z1ZXZ10F_E1LI3J}
Attachment:
- script.py
以下、中身。
|
|
Solution
逆の処理をしてdecryptするだけです。
|
|
Flag: SHELL{5U65T1TUT10N_C1PH3R}
Pythonで文字列のIndexのとり方が勉強になりました。
[Crypto]: Cjk (92 points)
Challenge
There is a locker protected with a pin.
Can you help me out in finding the pin in the image, and there is some labeling side of it.
Note : flag is not in SHELL{} format, just a positive number.
Attachment:
### (Unsolved) CJKというのは、Chinese Japanese Koreanのイニシャルでした。
郵便マーク (U+3036)、JISマーク (U+3004) はいいとして、3つ目の記号はなんだよ!
もう少し判別つきやすいものを使ってほしいところ。
[Rev]: assembly (50 points)
Challenge
fun1(0x74,0x6f) + fun1(0x62,0x69) = ?
Attachment:
- asm_code.txt
以下、中身です。
|
|
Solution
C言語に書き起こしました。
|
|
$ gcc assembly_solve.c $ ./a.out 0x117
Flag: SHELL{0x117}
Author CaptureAmerica @ CTF フラxxグゲット
LastMod 2021-06-08