概要
TryHackMe「CTF collection Vol.1」のWalkthroughです。
Task2
Q1.「VEhNe2p1NTdfZDNjMGQzXzdoM19iNDUzfQ==」Feed me the flag!
Hint.base64
base64
でデコードしてフラグゲットです。
$ echo -n 'VEhNe2p1NTdfZDNjMGQzXzdoM19iNDUzfQ==' | base64 -d
THM{ju57_d3c0d3_7h3_b453}
A.THM{ju57_d3c0d3_7h3_b453}
Task3
画像をダウンロードしました。
Q1.I'm hungry, I need the flag.
Hint.EXIF tool
exiftool
で画像ファイルのメタデータをみます。
$ exiftool /media/sf_share/Find_me_1577975566801.jpg
Owner Name
項目にフラグが表示されました。
Owner Name : THM{3x1f_0r_3x17}
A.THM{3x1f_0r_3x17}
Task4
Q1.It is sad. Feed me the flag.
Hint.Steghide
steghide
で内部に隠されたテキストファイルを抽出します。
$ steghide extract -sf /media/sf_share/Extinction_1577976250757.jpg
Enter passphrase:
wrote extracted data to "Final_message.txt".
Final_message.txt
が抽出されたので閲覧してフラグゲットです。
$ cat Final_message.txt
It going to be over soon. Sleep my child.
THM{500n3r_0r_l473r_17_15_0ur_7urn}
A.THM{500n3r_0r_l473r_17_15_0ur_7urn}
Task5
Q1.Did you find the flag?
Hint.Highlight the text or check the html.
問題文の中に白文字でフラグがありました。
A.THM{wh173_fl46}
Task6
Q1.More flag please!
ダウンロードしたQRコードを読み込むとフラグが表示されました。
A.THM{qr_m4k3_l1f3_345y}
Task7
Q1.Found the flag?
ダウンロードしたファイルをバイナリエディタで見ると、フラグを発見しました。
A.THM{345y_f1nd_345y_60}
Task8
Q1.Oh, Oh, Did you get it?
Hint.base58
base58
でデコードしてフラグゲットです。
$ echo -n '3agrSy1CewF9v8ukcSkPSYm3oKUoByUpKG4L' | base58 -d
THM{17_h45_l3553r_l3773r5}
A.THM{17_h45_l3553r_l3773r5}
Task9
Q1.What did you get?
Hint.Ceaser cipher
cyberchef
でROT13 Brute Force
をしてフラグを見つけました。
A.THM{hail_the_caesar}
Task10
Q1.I'm hungry now... I need the flag
Hint.Check the html
task10
付近のHTMLにフラグが隠されていました。
A.THM{4lw4y5_ch3ck_7h3_c0m3mn7}
Task11
Q1.What is the content?
Hint.Check the PNG file header.
PNGのマジックナンバー89 50 4E 47
に置き換えます。
画像が正しく表示されてフラグゲットです。
A.THM{y35_w3_c4n}
Task12
Q1.Did you found the hidden flag?
Hint.reddit.
intext:”THM” intitle:”tryhackme site:"reddit.com"
でルームが公開された2020年ごろに絞って検索しました。
A.THM{50c14l_4cc0un7_15_p4r7_0f_051n7}
Task13
Q1.Can you decode it?
Hint.binaryfuck
binaryfuck
という難解プログラミング言語があるらしいです。
Binaryfuck is a spinoff of the most famous esoteric programming language Brainfuck, created by User:TastyToast.
Binaryfuck は、User:TastyToast によって作成された、最も有名な難解なプログラミング言語 Brainfuck のスピンオフです。
下記サイトで実行できます。
実行するとフラグが得られます。
A.THM{0h_my_h34d}
Task14
Q1.Did you crack it? Feed me now!
Hint.S1 XOR S2
python
でXORを求めるコード書きました。
s1 = '44585d6b2368737c65252166234f20626d'
s2 = '1010101010101010101010101010101010'
s1_bytes = bytes.fromhex(s1)
s2_bytes = bytes.fromhex(s2)
result = bytes(a ^ b for a, b in zip(s1_bytes, s2_bytes))
print(result)
実行してフラグが得られました。
$ python task14.py
b'THM{3xclu51v3_0r}'
A.THM{3xclu51v3_0r}
Task15
Q1.Flag! Flag! Flag!
Hint.Check the PNG file header.
binwalk
でファイルを読み込むとzipファイルで中にhello_there.txt
の存在を確認できました。
$ binwalk /media/sf_share/task15.jpg
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
0 0x0 JPEG image data, JFIF standard 1.02
30 0x1E TIFF image data, big-endian, offset of first image directory: 8
265845 0x40E75 Zip archive data, at least v2.0 to extract, uncompressed size: 69, name: hello_there.txt
266099 0x40F73 End of Zip archive, footer length: 22
拡張子をzipに変更して解凍しテキストファイルを閲覧します。
$ cp task15.jpg ./task15.zip
$ unzip task15.zip
Archive: task15.zip
warning [task15.zip]: 265845 extra bytes at beginning or within zipfile
(attempting to process anyway)
inflating: hello_there.txt
$ cat hello_there.txt
Thank you for extracting me, you are the best!
THM{y0u_w4lk_m3_0u7}
フラグが得られました。
A.THM{y0u_w4lk_m3_0u7}
Task16
Q1.What does the flag said?
Hint.Try stegsolve.
下記サイトで画像を読み込ませるとフラグが見えました。
A.THM{7h3r3_15_h0p3_1n_7h3_d4rkn355}
Task17
Q1.What does the bot said?
QRコードを読み取るとサンクラに繋がります。
音声でフラグを言っているので聞き取ります。
A.THM{SOUNDINGQR}
Task18
Q1.Did you found my past?
Hint.Wayback machine
Wayback Machine
にアクセスします。
指示のURLと期間で検索するとフラグが得られました。
A.THM{ch3ck_th3_h4ckb4ck}
Task19
Q1.The deciphered text
Hint.Find the key of vigenere cipher
cyberchefでvigenere
を選択し、フラグフォーマットが分かっているので、それに合わせてkeyを一文字ずつ総当たりしました。
A.TRYHACKME{YOU_FOUND_THE_KEY}
Task20
Q1.What is the flag?
Hint.dec -> hex -> ascii
下記サイトでdecimal
->hex
変換を行いました。
54484D7B31375F6A7535375F346E5F307264316E3472795F62343533357D
という値を得られました。
得られた値をascii
コードに変換するとフラグゲットです。
A.THM{17_ju57_4n_0rd1n4ry_b4535}
Task21
Q1.Did you captured my neighbor's flag?
Hint.Put it into stream. It will be much easier.
flag
という文字列で検索するとHTTP通信が見つかったので追跡します。
レスポンスを確認するとフラグが得られました。
A.THM{d0_n07_574lk_m3}