CARBANAK ウィーク パート 4: CARBANAK デスクトップ ビデオ プレーヤー

CARBANAK desktop video player news

CARBANAK ウィークの第 1 部第 2部、 第 3 部が終わりました。この最後のブログ投稿では、CARBANAK ツールセットの一部である興味深いツールの 1 つについて詳しく説明します。 CARBANAK の作成者は独自のビデオ プレーヤーを作成しました。私たちは、ネットワーク オペレーターが攻撃的な交戦の準備をしている CARBANAK からの興味深いビデオ キャプチャをたまたま見つけました。再生できますか?

動画プレーヤーについて

CARBANAK バックドアは、被害者のデスクトップのビデオを記録することができます。報告によると、攻撃者は記録されたデスクトップ ビデオを閲覧して、標的の銀行で働く従業員の業務ワークフローを理解し、銀行の検証プロセスでは検出されなかった不正なトランザクションを挿入することに成功したと報告されています。 数人の FIN7 メンバーの逮捕を発表した以前のブログ投稿で述べたように、ビデオ データ ファイル形式とビデオの表示に使用されるプレーヤーはカスタム作成されたようです。図 1 に示すビデオ プレーヤーと、ボット用の C2 サーバーは、ペアとして連携するように設計されています。

CARBANAK desktop video player
図 1: CARBANAK デスクトップ ビデオ プレーヤー

C2 サーバーは、CARBANAK ボットから受信したビデオ ストリーム データを、ビデオ プレーヤーが理解できるカスタム ビデオ ファイル形式でラップし、これらのビデオ ファイルを、ビデオ プレーヤーが想定する規則に基づいてディスク上の場所に書き込みます。図 2 に示す StreamVideo コンストラクターは、署名 TAG、タイムスタンプ データ、および感染したホストの IP アドレスを含むヘッダーを先頭に追加して、CARBANAK ボットから受信したビデオ キャプチャ データを格納する新しいビデオ ファイルを作成します。このコードは、C2 サーバー プロジェクトの一部です。

carbanakserverServerStream.cs – 動画データをファイルにシリアル化する C2 サーバーからのコード スニペット
図 2: carbanakserverServerStream.cs – 動画データをファイルにシリアル化する C2 サーバーのコード スニペット

図 3 は、ビデオ プレーヤー プロジェクトの一部である LoadVideo 関数を示しています。 TAG 署名を検索してファイル タイプを検証し、図 2 の C2 サーバー コードによって書き込まれたのと同じように、タイムスタンプ値と IP アドレスを読み取ります。

carbanakserverPlayerVideo.cs – C2 サーバーによって作成された動画ファイルをロードするプレーヤー コード
図 3: carbanakserverPlayerVideo.cs – C2 サーバーによって作成されたビデオ ファイルをロードするプレーヤー コード

ビデオ ファイルの拡張子は、図 4 と図 5 に示すように .frm です。図 4 に示す C2 サーバーの CreateStreamVideo 関数は、MakeStreamFileName 関数で定義された規則に従ってファイル パスをフォーマットし、図 2 の StreamVideo コンストラクターを呼び出します。

carbanakserverServerRecordFromBot.cs – ビデオ ファイル名をフォーマットし、拡張子「frm」を追加する C2 サーバーの機能
図 4: carbanakserverServerRecordFromBot.cs – ビデオ ファイル名をフォーマットし、拡張子「frm」を追加する C2 サーバー内の関数

図 5 に示すビデオ プレーヤーのコード スニペットは、ビデオ ファイル パスの規則に従い、DateTime 変数 dt の範囲内に収まる開始タイムスタンプと終了タイムスタンプを持つ拡張子 .frm を持つファイルをすべてのビデオ ファイル ディレクトリから検索します。

carbanakserverPlayerVideo.cs – 拡張子が「frm」の動画ファイルを検索する Player コードのスニペット
図 5: carbanakserverPlayerVideo.cs – 拡張子が「frm」のビデオ ファイルを検索する Player コードのスニペット

興味深いビデオ

いくつかのビデオ ファイルを見つけましたが、このビデオ プレーヤーと互換性があるのは一部だけでした。いくつかの分析の後、ビデオ ファイル形式には少なくとも 2 つの異なるバージョンが存在することが判明しました。ビデオ処理コードを少し調整した後、両方の形式がサポートされるようになり、すべてのビデオを再生できるようになりました。

図 6 は、これらのビデオの 1 つからの画像を示しています。この画像では、監視されている人物がエクスプロイト後のコマンドをテストしているように見え、特定のセキュリティ監視ツールによって検出されないようにしています。

CARBANAK ビデオ機能によってキャプチャされたビデオ再生のスクリーンショット
図 6: CARBANAK ビデオ機能によってキャプチャされたビデオ再生のスクリーンショット

図のコマンドのリストは、永続化、スクリーンショットの作成、およびさまざまなペイロードの起動を中心にしています。レッドチームは、永続化、エスカレーション、横移動などのさまざまなタスクを達成するために、このような一般的なメモやコマンド スニペットを維持することがよくあります。これの極端な例は、Ben Clark の本RTFMです。操作の前に、ファイル名、レジストリ値の名前、ディレクトリ、およびその他のパラメーターを調整して、より適切なカバーを提供し、ブルーチームが方法論に基づいて推論を引き出すのを防ぐのが通例です.さらに、Windows の動作は、値の長さの制限、ペイロードと特定の永続化メカニズムの間の予期しない相互作用など、驚くべき結果をもたらすことがあります。予行演習を実行し、予期しない問題によって取得したアクセスが危険にさらされないようにすることは、攻撃者の利益になります。

このビデオで CARBANAK を介して監視されている人物は、攻撃の準備をしているネットワーク オペレーターのようです。これは、オペレーターが CARBANAK をテストしていたか、またはそれらがモニターされていたためである可能性があります。 CARBANAK ビルダーやその他のインターフェースは一切表示されず、オペレーターが公開されているいくつかのツールと戦術を準備しているのが見られます。純粋に憶測に過ぎませんが、これはフロント企業の Combi Security の従業員であり、 現在では FIN7 が無意識のオペレーターを募集するために運営していたことがわかっています。さらに、FIN7 が CARBANAK の tinymet コマンドを使用して Meterpreter インスタンスを生成し、侵入テストという誤った前提の下で公開ツールを使用して無意識のオペレーターにターゲットへのアクセスを許可した可能性があります。

結論

この最後の記事は、愛情を込めて CARBANAK Week と名付けられた 4 部構成のシリーズを終了します。要約すると、大規模で複雑なマルウェア ファミリのリバース エンジニアリングに何十時間も費やした後、マルウェアのソース コードとツールセットにたどり着いたリバース エンジニアとしての経験に関する多くの詳細を共有してきました。これはめったに起こらないことです!

FireEye の継続的な CARBANAK 調査に対する今週の長い補遺が、幅広いセキュリティ コミュニティにとって、フレームワークの機能と、その開発に費やされた設計上の考慮事項のいくつかを調査する上で、興味深く、役立つことを願っています。

これまでのところ、ソース コードの発見と最近の CARBANAK エコシステムの公開について、多くの肯定的なフィードバックを受け取りました。 CARBANAK ウィークで議論した内容の多くは、もともと FireEye のCyber Defense Summit 2018プレゼンテーション「 Hello, Carbanak !」で取り上げられたものであり、オンラインで無料で視聴できます(マルウェアとレーダーホーゼン愛好家の両方にとって必見です)。 )。 2019 年 10 月 7 日から 10 月 10 日までワシントン DC で開催される FireEye のサイバー ディフェンス サミット 2019では、同様のトピックや、その他のマルウェア分析、インシデント対応、フォレンジック調査、脅威インテリジェンスに関する興味深い一連のディスカッションが予定されています。

参照: https://www.mandiant.com/resources/blog/carbanak-week-part-four-desktop-video-player

Comments

タイトルとURLをコピーしました