Monstrum ex Machina で用いたファイルについて、
同じ名前で拡張子が .exe
と .bin
のファイルのMD5を要求された。
pcap-challenge-final.pcapng
に strings
コマンドを適用した結果から .exe
を検索すると、以下の部分が見つかった。
Regarding the file used in Monstrum ex Machina,
MD5 of files that shares the name and the extensions are .exe
and .bin
were asked.
I searched for .exe
from the output of the strings
command for the file pcap-challenge-final.pcapng
, and found this part:
この結果より、lytton-crypt.bin
と lytton-crypt.exe
は条件を満たしそうである。
続いて、lytton-crypt.exe
で検索すると、以下の部分が見つかった。
From this result, the files lytton-crypt.bin
and lytton-crypt.exe
should satisfy the condition.
Then, I searched for lytton-crypt.exe
and found this part:
これはFTPっぽいと思い、 Founding this looks like FTP, I referred FILE TRANSFER PROTOCOL (FTP) を参照すると、以下の記述が見つかった。 and found this part:
A port command would be:
PORT h1,h2,h3,h4,p1,p2
where h1 is the high order 8 bits of the internet host address.
これを参考に、192,168,100,103,193,243
はIPアドレス 192.168.100.103
、ポート番号 193 * 256 + 243 = 49651
を表すと推測した。
そして、pcap-challenge-final.pcapng
を開き、
ip.addr == 192.168.100.103 && tcp.port==49651
でフィルタをかけた。
さらに、表示された適当なパケットで「追跡 → TCPストリーム」を行い、「としてデータを表示」を「Raw(無加工)形式」にした上で、「…として保存」で保存した。
すると、105,984バイトのデータが得られ、最初の情報と一致した。
次に、strings
コマンドの結果から lytton-crypt.bin
で検索すると、以下の部分が見つかった。
Based on this, I guessed that 192,168,100,103,193,243
stands for an IP address 192.168.100.103
and a port number 193 * 256 + 243 = 49651
.
Then, I opened pcap-challenge-final.pcapng
on ip.addr == 192.168.100.103 && tcp.port==49651
.
Then, I used "Follow → TCP stream" on some displayed packet, set "Show data as" to "Raw", and saved the data via "Save as…".
As a result, 105,984-byte data was saved. This size matches with the information I firstly obtained.
Then, I searched for lytton-crypt.bin
from the output of the strings
command, and found this part:
同様に、Wiresharkでフィルタ ip.addr == 192.168.100.103 && tcp.port==49649
をかけ、データを保存した。
すると31,776バイトのデータが得られ、これも最初の情報と一致した。
得られたデータのMD5をそれぞれ md5sum
コマンドで求め、指定の形式に当てはめることで、flagが得られた。
In the same way, I applied a filter ip.addr == 192.168.100.103 && tcp.port==49649
on Wireshark and saved the data.
As a result, 31,776-byte data was saved and this size also matches with the imformation.
I obtained the flag by using md5sum
command to obtain MD5 of saved data and formatting them as specified.