[日本語] [English]

replay

TCPサーバの接続情報と、ファイル replay.pcap が与えられた。

replay.pcapWiresharkで開き、適当な行を右クリックして「追跡 → TCPストリーム」を選択すると、 何らかのデータを送った後シェルを操作している以下の様子がみられた。

data in Wireshark

「172.27.9.92:60572 → 35.224.47.193:1024 (425 bytes)」を選択し、「としてデータを表示」を「Raw(無加工)形式」にした上で、「…として保存」でデータを保存した。
さらに、バイナリエディタで最初の 0A より後の部分を削除した。
以下がこの結果得られたデータである。

data.dat

Tera Termでサーバに接続し、このデータを「ファイル送信」で送信すると、接続が切れてしまった。
Wiresharkで通信の状況を確認すると、replay.pcap ではデータを1個のパケットで送信していたのに対し、 Tera Termからの通信では最初の100バイトとそれ以外の2パケットに分割して送信されていることがわかった。

TCP/IPテストツールでサーバに接続し、データを「FILE送信」で送信すると、シェルの操作が可能になった。
replay.pcap の解析結果から flag.txt があることがわかっているので、cat flag.txt コマンドを実行すると、flagが得られた。

buckeye{g00d_th1ng_P1E_w4s_d1s4bl3d_0n_th3_b1n4ry}

writeup by MikeCAT

BuckeyeCTF 2021