ネットワークなCTFっぽいもの〜01の楽しみ方

遅くなってしまいましたが、これの楽しみ方です。


まず、ざっと見た感じで気になるところ。

    • ipv6が動いてる?
    • ルーティングはOSPF?
    • VRRPでルータの冗長化
    • ICMPのデータ(@&Hya+psL(!k+LlkNMp10}_ldo*^~^w@)
    • 10.0.64.12と10.0.0.5が通信している
    • 10.0.64.12=サーバ
    • 10.0.0.5=クライアント
    • HTTP
    • Basic認証(joe:joe)
    • ファイルをダウンロードしている

とりあえずファイルを抽出してみる。


Preferences>Protocols>HTTP>Reassemble HTTP bodies spanning multiple TCP segments
にチェックが入っていれば、

File>Export>Objects>HTTP
でファイルを抽出できる。


ファイルをチェック。

$ file file
file: RAR archive data, v1d, os: Win32


$ unrar e file

Extracting from file

Enter password (will not be echoed) for dum:

Enter password (will not be echoed) for text:

No files to extract

パスワードが要求されるので"joe"や"@&Hya+psL(!k+LlkNMp10}_ldo*^~^w@"を試してみる。

$ unrar e file

Extracting from file

Enter password (will not be echoed) for dum:

Extracting dum OK
text - use current password ? [Y]es, [N]o, [A]ll y

Extracting text OK
All OK

"@&Hya+psL(!k+LlkNMp10}_ldo*^~^w@"が通った。

$ file *
dum: data
file: RAR archive data, v1d, os: Win32
text: Non-ISO extended-ASCII text, with CRLF line terminators

$cat text
・・・・・・・・

文字化けして読めないので、手っとりばやくエディタでw


$ gedit text &

windowsのfsutilコマンドを使ってみました。

例)fsutil file createnew dum 1572864

ん…?

$ hexdump -C dum | less
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00180000
なんだかオール0っぽい感じ。

ということで、このrarはフェイクでしたw
ではどこなのか。


ネットワークによく触れている人は違和感を感じていたかもしれないのですが、
VRRPのアドバタイズの間隔がデフォルトより長いんですよね。


VRRPとは(ざっくりと)

    • ルータを冗長化するプロトコルで、デフォルトゲートウェイが故障した時などに、自動的にマスタールータからバックアップルータに切り替わる
    • VRRPパケットを用いてマスター、バックアップを決める
    • マスタールータがVRRPパケットを送信する
    • 自分よりプライオリティの低いVRRPパケットを受信、もしくは一定時間マスタールータからVRRPパケットが届かなかった時、バックアップルータがマスタールータに変わる
    • 一定時間とは(アドバタイズ間隔×3+α)秒
    • テキスト認証(平文)とMD5による認証がある



このネットワークではVRRPのアドバタイズがデフォルト1秒→約5秒に変更されている。
ということは、マスタールータが落ちたとバックアップルータが判断するまでに、
通常の(3秒+α)→(15秒+α)かかってしまう。
やっぱりちょっと変。


VRRPパケットのみ抽出してみる。


途中でマスタールータが変わっている。
変わった前後のパケットを見てみる。





プライオリティが変わっているわけでもなく、アドバタイズの間隔も変わっていない。
あれ?おかしくない?


送信元10.0.64.3のVRRPをじっくり見てみる。
No147だけAuth Typeが1になっていて、Authentication stringに値が入っている。
6e656b6f→neko
で、答えがnekoでした。




純粋にネットワークだけで作ろうと思っていて、途中のファイルも明らかにダミーと分かるようにしたのですが、
もうちょっとひねればよかったです。
実は99%が生のパケットなので、実際にネットワークを考えて組むのが楽しかったり、また大変だったりでした。


一応めげずに第二弾の案はあるのですが、中々思うようにpcapとして形にできないので、いつになることやら…
もしできたらまたお付き合いいただければと思います。
ありがとうございました。



#数日中にVRRP環境におけるバックアップルータ→マスタールータの遷移のキャプチャをのせようと思います。
こちらです。