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つです。

  • Windowsホストの二つのPCはなにか、そしてそれに関連ずいているユーザアカウント名は何か?
  • 二つのPCのうち侵害されたPCはどちらか
  • PCを侵害したマルウェアの種類は何か。

解答

問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-GRIONXADESKTOP-C10SKPYになります。

続いてこのホストに結び付くユーザアカウント名を調べます。今度はWiresharkのフィルタでkerberos.CNameStringと入力し、フィルタをかけます。

フィルタをかけた後、下の画像にあるように、req-bodyのcname stringにユーザアカウント名があります。これを2つのホストを調べると答えになります。

f:id:kataware8136:20200427224449p:plain

  • GRIONXA:elmer.oben
  • C10SKPY:alyssa.fitzgerald

問2

問題にある画像のほうのファイルを見てみます。Sguilのキャプチャ画面のようです。

イベントIDを見ていくとET Malware Windows executable sent when remote host claims to send an image M3とあります。

f:id:kataware8136:20200427230124p:plain

これを見ると侵害を受けたのは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という実行ファイル特有の文字が見えます。

f:id:kataware8136:20200427230856p:plain

このファイルが怪しいので、Wiresharkのメニューから [ファイル] > [オブジェクトをエクスポート] > [HTTP] を選択し、ホスト名alphapioneer. comのパケット番号7388のオブジェクトをエクスポートします。

このファイルのハッシュ値を取得すると次のようになります。

MD5: 2cf20a1dd3693b996de4a559f1067850
SHA1: 6483bb40a7e3817f93a3ae95c6caea01715a4946
SHA256: f6210da7865e00351c0e79464a1ba14a8ecc59dd79f650f2ff76f1697f6807b1

上のMD5ハッシュ値virustotalで検索すると、47エンジンで検知したと出るので、このファイルがマルウェア、侵害されたのは10.0.0.167のホストということになります。

VTに上記のMD5で検索した結果

問3

VTで検索するとClamAVでQakbot、F-SecureでQbot、MicrosoftもQbot、Trend MicroでQBOT、SophosでQbotなのでこのマルウェアはQakbot(Qbot)の種類になることが予想できます。

Qakbot(Qbot)とは

以上で解答は終わりですが、解析初心者なのでQakbotについてまとめました。

まとめた元は下記のciscotalosのブログになるので、英語得意な方はどうぞ

blog.talosintelligence.com

Qbotはバンキング型のトロイの木馬で、2008年から観測されています。Qbotは銀行の資格情報をメインターゲットとしています。Qbotの主な感染経路はブラウザのエクスプロイトキットになります。QbotはFTPの資格情報を盗むことやSMBを用いてネットワーク全体に広がることもあります。またQbotは自身でアップデートを行います。

Qbotのまとめを読んで改めてpcapを見る。

ここからはどうでもいい考察になるので私の所感が気になる人は読んでください。ポエムです。

ブラウザのエクスプロイトキットが感染経路とあります。正規サイトを乗っ取ってマルウェアを配布するのかなと思い、問2のときにファイルのエクスポートで似たようなクエリが別のドメインに対して投げられているのを思い出して見直してみました。

見てみると一番上にあるドメインに対しても同じリクエストを投げています。ここで302リダイレクトを返してるのでここからリダイレクトしてマルウェアをホストしているサイトに飛ばしたのかなと思いました。が、これは普通にページがないのでトップページに戻される動きでした。

f:id:kataware8136:20200427233750p:plain

少し興味を持ってさらに調べます。atn24liveGoogle検索すると「もしかして: atm 24 live」とでます。なのでATMが24時間動いているところを検索しようとした人が誤ってタイポすることを狙ったのか、もしくは似たようなドメインとしてatn24live. com. cutestat. comというサイトがあるのでここにアクセスしようとしたユーザのタイポを狙ったのかというところです。

と考察したのですが、検索結果の一覧にANY.RUNのレポートがあるので見てみるとMalicious Activityとありました。私はPROライセンスは持っていないので、THREATSは見れなかったですが悪性と判断されているので、この問題のキャプチャ(およびany.run)では配布サーバとして生きていなかったのかと考えればいいのかなと思いました。

では逆にもともとのドメインは何なのかと思い、上の検索があったのならany.runでみれば安全ではと思い、検索すると見つかる。ANY.RUNのレポート

中身を見るとドメイン名がmalicious判定されている。正規サイトの改ざんではないのかなと思ったところで、OSINTはあんまり経験ないのでここまでにしておく。いろいろ楽しかったです。