Malware Traffic Analysis Exercise -STEELCOFFEEを解く
はじめに
malware-traffic-analysis.netで公開されているExerciseを解いてみたので、その解法を書きます。答え自体は下記のサイトにあるので解く手順を記載した感じです。
間違ってアクセスしないようにローカルアドレス以外のIPやドメインは意図的に空白をいれています。
またこのブログを見て悪意のあるドメインにアクセスしたことによって生じた結果について、私は一切責任を負いません。
またこういうのを書くのは初めてなので、何かまずいことあれば指摘いただけると幸いです。
問題ファイルは下記サイトにあるので、ぜひ自力で解いてみてください。
Malware-Traffic-Analysis.net - 2020-04-24 - Traffic analysis exercise - SteelCoffee
前提と問題
pcapファイルの前提となる環境と今回の問題についてです。
シナリオ
- LANセグメント: 10.0.0.0/24 (10.0.0.0 through 10.0.0.255)
- ドメイン: steelcoffee.net
- ドメインコントローラのIP: 10.0.0.10
- ドメインコントローラのPC名: SteelCoffee-DC
- LANのゲートウェイ: 10.0.0.1
- LANのブロードキャストアドレス: 10.0.0.255
問題
問題は全部で3つです。
解答
問1
渡されたpcapファイルをWiresharkで起動し、[メニュー] > [統計] > [解決したアドレス] を選択します。表示されたウィンドウのうちドメイン名を解決している部分までをコピーし、適当なテキストエディタに張り付けます。 テキストエディタの検索機能を用いて「10.0.0」を検索すると3件引っかかります。
10.0.0.167 DESKTOP-GRIONXA.steelcoffee.net 10.0.0.10 SteelCoffee-DC.steelcoffee.net 10.0.0.149 DESKTOP-C10SKPY.steelcoffee.net
このうち、10.0.0.10
のものはシナリオにあるドメインコントローラなので‘Windowsホストの2つは、DESKTOP-GRIONXA
とDESKTOP-C10SKPY
になります。
続いてこのホストに結び付くユーザアカウント名を調べます。今度はWiresharkのフィルタでkerberos.CNameString
と入力し、フィルタをかけます。
フィルタをかけた後、下の画像にあるように、req-bodyのcname stringにユーザアカウント名があります。これを2つのホストを調べると答えになります。
- GRIONXA:elmer.oben
- C10SKPY:alyssa.fitzgerald
問2
問題にある画像のほうのファイルを見てみます。Sguilのキャプチャ画面のようです。
イベントIDを見ていくとET Malware Windows executable sent when remote host claims to send an image M3
とあります。
これを見ると侵害を受けたのは10.0.0.167
のように見えます。確実にするために実際にダウンロードされたマルウェアを見つけます。
画像からIPが119. 31. 234. 40
でポート51132
を使用していることから、Wiresharkのフィルタにip.addr == 119. 31. 234. 40 && tcp.port == 51132
と入力することで通信を抽出します。
ついでに解決したアドレスからドメインalphapioneer. com
を割り出しておきます。
/GET /spool/8888.png
というパケットが見えるので、このパケットを選択し、右クリック > [追跡] > [TCPストリーム] で見てみると、png画像をダウンロードしていますが、This program cannot be run in DOS mode
という実行ファイル特有の文字が見えます。
このファイルが怪しいので、Wiresharkのメニューから [ファイル] > [オブジェクトをエクスポート] > [HTTP] を選択し、ホスト名alphapioneer. com
のパケット番号7388
のオブジェクトをエクスポートします。
このファイルのハッシュ値を取得すると次のようになります。
MD5: 2cf20a1dd3693b996de4a559f1067850 SHA1: 6483bb40a7e3817f93a3ae95c6caea01715a4946 SHA256: f6210da7865e00351c0e79464a1ba14a8ecc59dd79f650f2ff76f1697f6807b1
上のMD5のハッシュ値をvirustotalで検索すると、47エンジンで検知したと出るので、このファイルがマルウェア、侵害されたのは10.0.0.167
のホストということになります。
問3
VTで検索するとClamAVでQakbot、F-SecureでQbot、MicrosoftもQbot、Trend MicroでQBOT、SophosでQbotなのでこのマルウェアはQakbot(Qbot)の種類になることが予想できます。
Qakbot(Qbot)とは
以上で解答は終わりですが、解析初心者なのでQakbotについてまとめました。
まとめた元は下記のciscotalosのブログになるので、英語得意な方はどうぞ
Qbotはバンキング型のトロイの木馬で、2008年から観測されています。Qbotは銀行の資格情報をメインターゲットとしています。Qbotの主な感染経路はブラウザのエクスプロイトキットになります。QbotはFTPの資格情報を盗むことやSMBを用いてネットワーク全体に広がることもあります。またQbotは自身でアップデートを行います。
Qbotのまとめを読んで改めてpcapを見る。
ここからはどうでもいい考察になるので私の所感が気になる人は読んでください。ポエムです。
ブラウザのエクスプロイトキットが感染経路とあります。正規サイトを乗っ取ってマルウェアを配布するのかなと思い、問2のときにファイルのエクスポートで似たようなクエリが別のドメインに対して投げられているのを思い出して見直してみました。
見てみると一番上にあるドメインに対しても同じリクエストを投げています。ここで302リダイレクトを返してるのでここからリダイレクトしてマルウェアをホストしているサイトに飛ばしたのかなと思いました。が、これは普通にページがないのでトップページに戻される動きでした。
少し興味を持ってさらに調べます。atn24live
でGoogle検索すると「もしかして: atm 24 live」とでます。なのでATMが24時間動いているところを検索しようとした人が誤ってタイポすることを狙ったのか、もしくは似たようなドメインとしてatn24live. com. cutestat. com
というサイトがあるのでここにアクセスしようとしたユーザのタイポを狙ったのかというところです。
と考察したのですが、検索結果の一覧にANY.RUNのレポートがあるので見てみるとMalicious Activity
とありました。私はPROライセンスは持っていないので、THREATSは見れなかったですが悪性と判断されているので、この問題のキャプチャ(およびany.run)では配布サーバとして生きていなかったのかと考えればいいのかなと思いました。
では逆にもともとのドメインは何なのかと思い、上の検索があったのならany.runでみれば安全ではと思い、検索すると見つかる。ANY.RUNのレポート
中身を見るとドメイン名がmalicious判定されている。正規サイトの改ざんではないのかなと思ったところで、OSINTはあんまり経験ないのでここまでにしておく。いろいろ楽しかったです。