Google CTF 2018 Beginners Quest writeup 02
引き続き、writeup書きつつチャレンジしていきます。
FIRMWARE [re]
ダウンロードしたらext4ファイルが取得できるので
ひとまず調べてmountする。
# fdisk -l -u challenge2.ext4 Disk challenge2.ext4: 300 MiB, 314572800 bytes, 614400 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes # mount -o challenge2.ext4 /mnt/test/
lsを打つとそれっぽいデータがあったので
展開して終了!
# ls -al 合計 44 drwxr-xr-x 22 root root 1024 6月 22 22:54 . drwxr-xr-x 4 root root 4096 7月 1 01:16 .. -rw-r--r-- 1 root root 40 6月 22 22:54 .mediapc_backdoor_password.gz drwxr-xr-x 2 root root 3072 6月 22 22:54 bin drwxr-xr-x 2 root root 1024 6月 22 22:54 boot drwxr-xr-x 4 root root 1024 6月 22 22:54 dev drwxr-xr-x 52 root root 4096 6月 22 22:54 etc drwxr-xr-x 2 root root 1024 6月 22 22:54 home drwxr-xr-x 12 root root 1024 6月 22 22:54 lib drwxr-xr-x 2 root root 1024 6月 22 22:54 lib64 drwx------ 2 root root 12288 6月 22 22:51 lost+found drwxr-xr-x 2 root root 1024 6月 22 22:54 media drwxr-xr-x 2 root root 1024 6月 22 22:54 mnt drwxr-xr-x 2 root root 1024 6月 22 22:54 opt drwxr-xr-x 2 root root 1024 6月 22 22:54 proc drwx------ 2 root root 1024 6月 22 22:54 root drwxr-xr-x 4 root root 1024 6月 22 22:54 run drwxr-xr-x 2 root root 3072 6月 22 22:54 sbin drwxr-xr-x 2 root root 1024 6月 22 22:54 srv drwxr-xr-x 2 root root 1024 6月 22 22:54 sys drwxr-xr-x 2 root root 1024 6月 22 22:54 tmp drwxr-xr-x 10 root root 1024 6月 22 22:54 usr drwxr-xr-x 9 root root 1024 6月 22 22:54 var # gunzip .mediapc_backdoor_password.gz # more .mediapc_backdoor_password CTF{I_kn0W_tH15_Fs}
FlagはCTF{I_kn0W_tH15_Fs}
でした。
GATEKEEPER [re]
バイナリファイルが与えられるので実行してみる。
# ./gatekeeper /===========================================================================\ | Gatekeeper - Access your PC from everywhere! | +===========================================================================+ [ERROR] Login information missing Usage: ./gatekeeper <username> <password>
usernameとpasswordを確認する必要があるっぽいので
ltraceしながら実行してみるとstrcmpしている部分があるのでusernameをゲット!
# ltrace ./gatekeeper user password (省略) strcmp("user", "0n3_W4rM") (省略)
usernameを「0n3_W4rM」に変更してもう一度実行してみると
もう一度strcmpしている部分を発見。
ただpasswordで入力したのに逆文字で比較されてる。
# ltrace ./gatekeeper 0n3_W4rM password (省略) strcmp("drowssap", "zLl1ks_d4m_T0g_I") = -22 (省略)
そのため、比較している文字を逆にして入力するとフラグゲット!。
# ./gatekeeper 0n3_W4rM I_g0T_m4d_sk1lLz /===========================================================================\ | Gatekeeper - Access your PC from everywhere! | +===========================================================================+ ~> Verifying.......Correct! Welcome back! CTF{I_g0T_m4d_sk1lLz}
FlagはCTF{I_g0T_m4d_sk1lLz}