Python を使用して、漏洩したチャット ログから脅威インテリジェンスの宝庫を発掘する

news

大量のデータを処理するには時間がかかる可能性があるため、Python を使用すると、アナリストが情報を分類し、調査に最も関連するデータを抽出するのに非常に役立ちます。たとえば、オープンソース ツール ライブラリのMSTICPyは、脅威インテリジェンス専用の Python ツールです。脅威アナリストがデータを取得、強化、分析、視覚化できるようにすることを目的としています。

このブログでは、Python を使用した詳細なデータ分析と視覚化、および MSTICPy を使用した侵害の痕跡 (IOC) の抽出と分析のワークフローを提供します。事例研究としては、2022 年 2 月にランサムウェア アズ ア サービス (RaaS) の「Conti」と呼ばれる協調操作からデータが漏洩したデータ セットが使用されています。

関連データを含むインタラクティブな Jupyter ノートブックも、さらなるデータ探索に関心のあるアナリスト向けに用意されています。

この調査の目的は、他のアナリストが Python を脅威インテリジェンスに適用するのに役立つ可能性がある調査方法についての見解を提供することです。アナリストはコードを再利用して、抽出された情報を引き続き調査できます。さらに、チャット ログの分析、IOC の抽出、および Python を使用した脅威インテリジェンスと防御プロセスの改善のためのすぐに使用できる方法論を提供します。

Python を使用して Conti ネットワークを分析する

2022 年 2 月 28 日、@ContiLeaks (ウクライナの研究者とされる) という名前の Twitter アカウントが、流出した Conti データを Twitter に投稿し始めました。数か月にわたって投稿された漏洩データ セットは、チャット ログ、ソース コード、およびバックエンド アプリケーションで構成されていました。

この調査では、コンティ グループの操作方法、インフラストラクチャ、および組織構造に関する重要な情報を明らかにしたチャット ログに分析を集中しました。

チャットログの編集と翻訳

流出したチャットログはロシア語で書かれています。分析をよりアクセスしやすくするために、 ここで公開されている方法論を採用し、ログを英語に翻訳しました。

チャット ログから、Conti グループがメッセージング アプリケーションの Jabber を使用してメンバー間の通信を行っていることが明らかになりました。生の Jabber ログは 1 日ごとにファイルを使用して保存されるため、1 つの JSON ファイルにコンパイルできるため、Python で簡単に操作できます。データがマージされると、ディープ トランスレータ ライブラリを使用して翻訳できます。ログが変換されて新しいファイルに読み込まれた後、操作と探索のためにデータをデータフレームに読み込むことができます。

df = pd.read_json(codecs.open('translated_Log2.json', 'r', 'utf-8'))
ロシア語から英語に翻訳されたチャット メッセージの表のスクリーンショット。この表には、メッセージが送信された日時、送信者、送信先、ロシア語の原文、および翻訳された英語版の詳細が含まれています。
図 1. 翻訳されたログ

自動化されたプロセスで正しく翻訳されなかったロシア語の俗語は、辞書を作成することで翻訳できます。この場合、スラングを正しく翻訳するために、 ここで提案されているリストにない辞書が使用されました。

ロシア語のスラングの翻訳に使用できる辞書を作成する Python コードのスクリーンショット。ロシア語の俗語とその英語訳のリストを掲載しています。
図 2. スラングの翻訳

チャット アクティビティ タイムラインの分析

チャット ログから洞察を得る 1 つの方法は、そのタイムラインを表示し、1 日あたりのディスカッション数を確認することです。 Bokehライブラリを使用して、インタラクティブな図を作成し、読み込まれたデータフレームを探索できます。

Bokeh ライブラリを使用してデータを探索するための Python コードのスクリーンショット。結果のフィルタリング、図の作成、ホバー ツールの追加を行うコードを示します。
図 3. ディスカッションを探索するための Python コード

Conti チャット ログのデータを使用すると、次の図が生成されます。これは、時間の経過に伴う Jabber ディスカッションの量を示しています。

2021 年 3 月から 2022 年 3 月までの Conti グループ内のディスカッションの量を示す折れ線グラフ。データは、活動のいくつかのピークを示しており、主に 2021 年 9 月から 12 月に集中しています。
図 4. 議論の量の推移

データをタイムラインとして視覚化すると、特定のイベントに一致するアクティビティのピークがいくつか示されます。たとえば、Conti リークの場合は次のようになります。

  • 2021 年 7 月 7 日 (615 件の議論): ソフトウェア会社 Kaseya に対する REvil によるランサムウェア攻撃
  • 2021 年 8 月 27 日 (1,289 件のディスカッション): 特定の Conti アフィリエイトのプレイブックが流出しました
  • 2021 年 8 月 31 日 (1,156 件のディスカッション): ランサムウェアとレイバー デーに関する FBI CISA 勧告
  • 2021 年 8 月 10 日 (853 件のディスカッション): Conti による Meyer Corporation に対するランサムウェア攻撃

興味深いことに、最初のリークの後、Conti グループ内でチャット アクティビティのピークが観察されませんでした。これは、その時点で侵害が無視されたか、グループによって認識されていなかったことを示している可能性があります。

ユーザー アクティビティのレベルの分析

チャット ログを分析する場合、ユーザー数を特定し、最もアクティブなユーザーを分析することで、グループの規模とグループ内のユーザーの役割を把握できます。 Python を使用すると、ユーザーのリストを抽出してテキスト ファイルに保存できます。

Conti チャット ログからユーザーのリストを抽出する Python コードのスクリーンショット。リストから重複を削除し、データフレームを連結し、リストをテキスト ファイルに保存するコードも示します。
図 5. ユーザーのリストの抽出

Conti チャット ログを使用して上記のスクリプトを実行すると、346 個の一意のアカウントのリストが得られました。このリストを使用してグラフを作成し、どのユーザーが最も多くのメッセージを送信したかを示すことができます。

最も多くのメッセージを含む Conti チャット ログからのユーザーのリストを表示するグラフを作成する Python コードのスクリーンショット。
図 6. ほとんどのメッセージを持つユーザーのグラフの作成
送信したメッセージの数に基づいて、Conti チャット ログのユーザーを比較する棒グラフ。バーは、最もアクティブなユーザーが 8,000 を超えるメッセージを送信したことを示しています。
図 7. Conti チャット ログで最もアクティブなユーザー

グラフに基づくと、 defendersterndriverbiomangoという名前のユーザーが最も多くのディスカッションを行っています。 チェックポイントは、組織の構造に関する広範な調査を公開し、ユーザーの議論を、人事、コーダー、クリプター、攻撃チーム、システム管理者などのいくつかの役割とサービスと関連付けました。

ユーザーの接続のマッピング

チャット ログ データを分析するもう 1 つの方法は、ユーザーの接続を視覚化することです。これは、ユーザー間のつながりを強調できる動的ネットワーク グラフを作成することで実現できます。 Barnes Hut アルゴリズムと Pyvis ライブラリを使用して、このデータを視覚化できます。

Barnes Hut アルゴリズムと Pyvis ライブラリを使用して Conti チャット ログ データの動的ネットワーク グラフを作成する Python コードのスクリーンショット。
図 8. 動的グラフの作成

動的な視覚化により、ネットワークの概要がグラフィカルに表示され、ネットワークを拡大して内部の接続を詳細に分析できます。ポイントが大きいほど、最もアクティブなユーザーを表し、ユーザーをハイライトして接続を分析することができます。さらに、ホバリング ツールは、特定のユーザーが他のどのユーザーと会話したかを示します。

Conti ネットワークの概要をグラフィカルに表示する動的視覚化のスクリーンショット。ユーザーをグラフ内のポイントとして表示し、ユーザー間の会話を表す線ですべて接続します。
図 9. Conti ユーザー ネットワークの概要
Conti ネットワークから「Stern」という名前のユーザーへの接続リストのスクリーンショット。リストの背景には、Conti ネットワーク全体のグラフィカルな概要が表示されます。
図 10. ユーザー「Stern」への接続

興味のある他のトピックを検索する

データセットの読み取りには時間がかかる場合があるため、単純な検索エンジンを構築して、チャット ログ内の特定の文字列を検索したり、関心のあるトピックをフィルター処理したりできます。 Conti のリーク データの例としては、Bitcoin、ユーザー名、マルウェア名、エクスプロイト、CVE などが挙げられます。

次のコード スニペットは、 TextSearch ライブラリを使用した単純な検索エンジンを提供します。

Github の TextSearch ライブラリを使用して検索エンジンを作成する Python コードのスクリーンショット。このコードは、検索エンジン ウィジェットの構成オプションと検索結果のフィルターを示します。
図 11. Python を使用した検索エンジン

MSTICPy を使用して IOC を抽出および分析する

チャット ログを処理してユーザーのアクティビティと接続を分析するだけでなく、Python を使用して脅威インテリジェンスを抽出して分析することもできます。このセクションでは、MSTICPy ライブラリを使用して IOC を抽出する方法と、追加の脅威ハンティングとインテリジェンスに使用する方法について説明します。

IOC の抽出

MSTICPy は、脅威の調査と脅威のハンティングに使用される Python ライブラリです。このライブラリは、複数の脅威インテリジェンス プロバイダーや、Microsoft Sentinel などの Microsoft ツールに接続できます。これは、ログのクエリとデータの強化に使用できます。これは、IOC を分析し、脅威のコンテキスト化を追加する場合に特に便利です。

MSTICPy をインストールしたら、まずノートブックを初期化します。これにより、データの抽出と強化に使用できる複数のモジュールをロードできます。 msticpyconfig.yamlを構成して API キーを追加することで、VirusTotal や OTX などの外部リソースを追加することもできます。

MSTICPy の IoCExtract モジュールは、定義済みの正規表現を使用して IOC を抽出する便利な方法を提供します。このコードは、DNS、URL、IP アドレス、ハッシュなどの IOC を自動的に抽出し、新しいデータフレームで報告します。

IOC 抽出用にデータフレームを準備する Python コードのスクリーンショット。データフレームから「None」値を削除し、IOC エクストラクタを開始するコードを示します。
図 12. 抽出のためにデータフレームをモジュールに渡す
Conti チャット ログで見つかった IOC パターンを一覧表示するサンプル テーブルのスクリーンショット。次のデータ フィールドが含まれます: IOC タイプ、オブザーバブル、ソース インデックス、および入力。
図 13. 抽出された IOC のサンプル

正規表現を追加して、デフォルトで IOC 抽出モジュールによって抽出されたものから特定の IOC をフィルタリングできます。たとえば、以下の正規表現は、Conti チャット ログからビットコイン アドレスを抽出します。

MSTICPy の IOCExtract モジュールに正規表現を追加する Python コードのスクリーンショット。この特定の正規表現は、Conti チャット ログからビットコイン アドレスを抽出します。
図 14. ビットコイン アドレスの抽出と正規表現の追加
Conti チャット ログから抽出されたビットコイン アドレスを示すテーブルのスクリーンショット。このテーブルには、IOCtype、observable、ソース インデックス、および入力のデータ フィールドが含まれています。
図 15. 抽出されたビットコイン アドレスのサンプル

IOC を抽出した後、データフレームをクリーンアップして誤検知と重複データを削除できます。処理された Conti チャット ログの最終的なデータフレームには、次の一意の IOC カウントが含まれています (これらの IOC はすべて悪意があると見なされるわけではないため、追加の分析が必要です)。

URL DNS IPV4 ビットコイン MD5 SHA-256
1,137 474 317 175 106 16

IP アドレスの調査

MSTICPy の脅威インテリジェンス ルックアップ モジュールTILookupを使用して、IP アドレスなどの IOC に関する詳細情報を取得できます。 Conti リークの場合、317 の一意の IP アドレスが特定されました。これらすべての IOC が悪意のあるものではありませんが、より関連性の高い情報を明らかにする可能性があります。

構成ファイルは、TILookup モジュールをロードするように指定でき、VirusTotal、GreyNoise、OTX などの他の脅威インテリジェンス プロバイダーも一緒にロードできます。

MSTICPy で脅威インテリジェンス ルックアップ モジュールを読み込む Python コードのスクリーンショット。また、VirusTotal、GreyNoise、OTX などの他の脅威インテリジェンス プロバイダーをロードし、タイプ別に IOC をフィルター処理するコードも示します。
図 16. MSTICPy 内の脅威インテリジェンス プロバイダー

モジュールを実行すると、提供されたすべての IP アドレスのコンテキストが追加された新しいデータフレームが生成されます。

脅威インテリジェンス ルックアップ モジュールを実行して生成されたテーブルのスクリーンショット。この表は、Conti チャット ログから抽出された IP アドレスのリストと、関連する脅威インテリジェンス データを示しています。
図 17. 追加情報で強化された IP アドレスのサンプル

このモジュールでは、単一のオブザーバブルの情報をリクエストすることもできます。

MSTICPy の脅威インテリジェンス ルックアップ モジュールを介して単一のオブザーバブルで脅威インテリジェンス データを抽出する Python コードのスクリーンショット。
図 18. 単一のオブザーバブルの情報を抽出する
脅威インテリジェンス ルックアップ モジュールを実行して生成されたテーブルのスクリーンショット。これは、特定の IP アドレスに関する GreyNoise、OTX、および VirusTotal からの脅威インテリジェンス データを示しています。
図 19. 1 つの IP アドレスに対する追加の脅威コンテキスト

MSTICPy によって提供されるブラウザーを使用して、以前に強化された IOC を探索することもできます。 インタラクティブな Jupyter ノートブックには、IOC のこのビューが含まれています。

Conti チャット ログから抽出された IOC を調査するために使用できる、MSTICPy によって提供されるブラウザーのスクリーンショット。ブラウザーには、選択した IP アドレスに関連する脅威インテリジェンスの詳細が表示されます。
図 20. MSTICPy が提供する IOC ブラウザ

さらに、MSTICPy には、 Maxmindを使用してIP アドレスの地理位置情報を検索する組み込みモジュールがあり、以前に抽出した IP アドレスのマップを作成するために使用できます。

IP アドレスの位置情報を検索する Python コードのスクリーンショット。また、生成された位置情報データを使用してマップを作成するコードも示します。
図 21. IP ジオロケーション マップの生成
Conti リークから抽出されたすべての IP の地理位置情報が赤いピンでマークされた世界地図。この画像は、IP の場所がヨーロッパと米国に集中していることを示しています。
図 22. Conti リークから抽出された IP の位置情報

URL の調査

IOC リストから抽出された URL は、ターゲット、情報交換に使用されるツール、および攻撃の展開に使用されるインフラストラクチャに関する詳細を提供できます。 Conti リーク データセットから合計 1,137 の一意の URL が抽出されましたが、そのすべてが脅威インテリジェンスに使用できるわけではありません。次のコード スニペットは、URL をフィルタリングする方法を示しています。

IOC リスト内の URL をフィルタリングする Python コードのスクリーンショット。
図 23. URL の IOC のフィルタリング
IOC リストから URL をフィルタリングして生成されたテーブルのスクリーンショット。このテーブルには、IOC タイプ、オブザーバブル、ソース インデックス、および入力のデータ フィールドが含まれています。
図 24. 抽出された URL のサンプル

フィルターを作成して、実行可能ファイル、DLL、ZIP ファイル、および抽出された URL に関連するその他のファイルの詳細を取得できます。これは興味深い洞察を提供し、さらなる研究のために抽出することができます。

抽出された URL に関連する特定のファイル タイプをフィルタリングする Python コードのスクリーンショット。このコードは、.exe、.dll、.jpg、.zip、.7z、.rar、および .png ファイルを含む URL を検索します。
図 25. 特定のファイル形式の URL をフィルタリングする
特定のファイル形式に関連する URL のフィルタリングから生成されたテーブルのスクリーンショット。このテーブルには、IOC タイプ、オブザーバブル、ソース インデックス、および入力のデータ フィールドがあります。
図 26. 抽出されたファイルを配信する URL のサンプル

フィルタリングに同じ手法を使用すると、URL リストから .onion URL を識別することもできます。これは、Conti グループが一部のインフラストラクチャに Tor ネットワークを使用していたため、このケースで特に有用であることが判明しました。

Conti チャット ログ IOC から .onion URL をフィルタリングして生成されたテーブルのスクリーンショット。この表は、IOC タイプ、オブザーバブル、ソース インデックス、および入力のデータ フィールドを示しています。
図 27. 抽出された .onion URL のサンプル

VirusTotal を使用して抽出された IOC をピボットする

MSTICPy ライブラリ内でピボット機能を使用すると、データを強化し、追加のインフラストラクチャと IOC を検出できます。これは、脅威インテリジェンスと攻撃者の追跡に特に役立ちます。次のセクションでは、MSTICPy の VirusTotal モジュールVTlookupV3を使用して、追加のマルウェアを配信するために使用された Conti リーク データセットから抽出された IP アドレスに関するインテリジェンスを取得する方法を示します。

次のコードは、 MSTICPyで VTlookupV3 を開始します。

MSTICPy で VirusTotal モジュールを開始する Python コードのスクリーンショット。
図 28. MSTICPy での VirusTotal モジュールの構成

VirusTotal モジュールを使用して、特定の IOC に関連するデータを取得できます。以下のコードは、Conti リーク データセットの特定の IP アドレスからダウンロードされたファイルを検索します。

MSTICPy の VirusTotal モジュールを使用して、特定の IP アドレスからダウンロードされたファイルを検索する Python コードのスクリーンショット。
図 29. 1 つの IP アドレスからファイルをダウンロードする

結果は、IP アドレス 109[.]230[.]199[.]73 がいくつかの種類のマルウェアを配信することを示しています。

特定の IP アドレスからダウンロードされたファイルのハッシュを抽出して生成されたテーブルのスクリーンショット。
図 30. IP 109[.]230[.]199[.]73 に関連するハッシュ

その後、VirusTotal モジュールを使用して、これらのハッシュに関する詳細情報をピボットおよび抽出できます。次の表は、リストの最初のハッシュに関する情報を示しています。

  属性
認証ハッシュ 0d10a35c1bed8d5a4516a2e704d43f10d47ffd2aabd9ce9e04fb3446f62168bf
作成日 1624910154
cloudsourced_ids_results [{[TRUNCATED]’alert_context’: [{‘dest_ip’: ‘8.8.8.8’, ‘dest_port’: 53}, {‘dest_ip’: ‘193.204.114.232’, ‘dest_port’: 123}], ‘rule_url’ : ‘https://www.snort.org/downloads/#rule-downloads’, ‘rule_source’: ‘Snort 登録ユーザー ルールセット’, ‘rule_id’: ‘1:527’}, {‘rule_category’: ‘not-疑わしい’, ‘alert_severity’: ‘low’, ‘rule_msg’: ‘TAG_LOG_PKT’, ‘rule_raw’: ‘alert ( gid:2; sid:1; rev:1; msg:”TAG_LOG_PKT”; metadata:rule-type preproc ; classtype:not-suspicious; )’, ‘alert_context’: [{‘dest_ip’: ‘107.181.161.197’, ‘dest_port’: 443}], ‘rule_url’: ‘https://www.snort.org/downloads /#rule-downloads’, ‘rule_source’: ‘Snort 登録ユーザー ルールセット’, ‘rule_id’: ‘2:1’}]
クラウドソーシング_ids_stats {‘情報’: 0、’高’: 0、’中’: 2、’低’: 1}
ダウンロード可能 真実
exifツール {‘MIMEType’: ‘application/octet-stream’, ‘Subsystem’: ‘Windows GUI’, ‘MachineType’: ‘AMD AMD64’, ‘TimeStamp’: ‘2021:06:28 19:55:54+00:00 ‘, ‘FileType’: ‘Win64 DLL’, ‘PEType’: ‘PE32+’, ‘CodeSize’: ‘115712’, ‘LinkerVersion’: ‘14.16’, ‘ImageFileCharacteristics’: ‘実行可能ファイル, 大規模アドレス対応, DLL’, ‘ FileTypeExtension’: ‘dll’, ‘InitializedDataSize’: ‘69632’, ‘SubsystemVersion’: ‘6.0’, ‘ImageVersion’: ‘0.0’, ‘OSVersion’: ‘6.0’, ‘EntryPoint’: ‘0x139c4’, ‘UninitializedDataSize’ : ‘0’}
first_submission_date 1624917754
last_analysis_date 16365918529
last_analysis_results { [切り捨てられた] ‘20211110’}, ‘Tencent’: {‘category’: ‘undetected’, ‘engine_name’: ‘Tencent’, ‘engine_version’: ‘1.0.0.1’, ‘result’: None, ‘method’: ‘blacklist’, ‘engine_update’: ‘20211111’}, ‘Ad-Aware’: {‘category’: ‘malicious’, Edition’: {‘category’: ‘malicious’, ‘engine_name’: ‘McAfee-GW-Edition ‘, ‘engine_version’: ‘v2019.1.2+3728’, ‘result’: ‘RDN/CobaltStrike’, ‘method’: ‘blacklist’, ‘engine_update’: ‘20211110’}, ‘Trapmine’: {‘category’: ‘type-unsupported’, ‘engine_name’: ‘Trapmine’, ‘engine_version’: ‘3.5.0.1023’, ‘result’: None, ‘method’: ‘blacklist’, ‘engine_update’: ‘20200727’}, ‘CMC’ : {‘category’: ‘undetected’, ‘engine_name’: ‘CMC’, ‘engine_version’: ‘2.10.2019.1’, ‘result’: None, ‘method’: ‘blacklist’, ‘engine_update’: ‘20211026’} , ‘Sophos’: {‘category’: ‘malicious’, ‘engine_name’: ‘Sophos’, ‘engine_version’: ‘1.4.1.0’, ‘result’:
last_analysis_stats {‘無害’: 0、’サポートされていないタイプ’: 6、’疑わしい’: 0、’確認されたタイムアウト’: 1、’タイムアウト’: 0、’失敗’: 0、’悪意のある’: 47、’未検出’ : 19}
last_modification_date 1646895757
last_submission_date 1624917754
マジック MS Windows 用の PE32+ 実行可能ファイル (DLL) (GUI) Mono/.Net アセンブリ
md5 55646b7df1d306b0414d4c8b3043c283
意味のある名前 197.dll
名前 [197.dll、iduD2A1.tmp]
pe_info [切り捨て] {‘exports’: [‘StartW’, ‘7c908697e85da103e304d57e0193d4cf’}, {‘name’: ‘.rsrc’, ‘chi2’: 51663.55, ‘virtual_address’: 196608, ‘エントロピー’: 5.81, ‘raw_size’: 1536, ‘フラグ’: ‘r’, ‘virtual_size’: 1128, ‘md5’:, ‘GetStringTypeW’, ‘RtlUnwindEx’, ‘GetOEMCP’, ‘TerminateProcess’, ‘GetModuleHandleExW’, ‘IsValidCodePage’, ‘WriteFile’, ‘ CreateFileW’、’FindClose’、’TlsGetValue’、’GetFileType’、’TlsSetValue’、’HeapAlloc’、’GetCurrentThreadId’、’SetLastError’、’LeaveCriticalSection’]}]、’entry_point’: 80324}
人気のある脅威の分類 {‘suggested_threat_label’: ‘trojan.bulz/shelma’, ‘popular_threat_category’: [{‘count’: 22, ‘value’: ‘trojan’}, {‘count’: 6, ‘value’: ‘downloader’}, {‘count’: 2, ‘value’: ‘dropper’}], ‘popular_threat_name’: [{‘count’: 6, ‘value’: ‘bulz’}, {‘count’: 6, ‘value’: ‘シェルマ’}, {‘カウント’: 3, ‘値’: ‘コバルトストライク’}]}
評判 0
sandbox_verdicts {‘Zenbox’: {‘category’: ‘malicious’, ‘sandbox_name’: ‘Zenbox’, ‘malware_classification’: [‘MALWARE’, ‘TROJAN’, ‘EVADER’]}, ‘C2AE’: {‘category’: ‘undetected’, ‘sandbox_name’: ‘C2AE’, ‘malware_classification’: [‘UNKNOWN_VERDICT’]}, ‘Yomi Hunter’: {‘category’: ‘malicious’, ‘sandbox_name’: ‘Yomi Hunter’, ‘malware_classification’: [‘MALWARE’]}, ‘Lastline’: {‘category’: ‘malicious’, ‘sandbox_name’: ‘Lastline’, ‘malware_classification’: [‘MALWARE’]}}
しゃ1 ddf0214fbf92240bc60480a37c9c803e3ad06321
sha256 cf0a85f491146002a26b01c8aff864a39a18a70c7b5c579e96deda212bfeec58
sigma_analysis_stats {‘高’: 0、’中’: 1、’重大’: 1、’低’: 0}
sigma_analysis_summary {‘Sigma Integrated Rule Set (GitHub)’: {‘high’: 0, ‘medium’: 0, ‘critical’: 1, ‘low’: 0}, ‘SOC Prime Threat Detection Marketplace’: {‘high’: 0、「中」: 1、「重大」: 0、「低」: 0}}
サイズ 181248
深い 3072:fck3rwbtOSN4X1JmKSol6LZVZgBPruYgr3Ig/XZO9:fck3rwblqPgokNgBPr9gA
タグ [アセンブリ、invalid-rich-pe-linker-version、detect-debug-environment、ロングスリープ、64 ビット、pedll]
times_submitted 1
tlsh T110049E14B2A914FBEE6A82B984935611B07174624338DFEF03A4C375DE0E7E15A3EF25
total_votes {‘無害’: 0, ‘悪意のある’: 0}
トライド [{‘file_type’: ‘Win64 実行可能ファイル (汎用)’, ‘確率’: 48.7}, {‘file_type’: ‘Win16 NE 実行可能ファイル (汎用)’, ‘確率’: 23.3}, {‘file_type’: ‘OS/ 2 Executable (generic)’, ‘probability’: 9.3}, {‘file_type’: ‘Generic Win/DOS Executable’, ‘probability’: 9.2}, {‘file_type’: ‘DOS Executable Generic’, ‘probability’: 9.2 }]
type_description Win32 DLL
type_extension dll
タイプタグ ペダル
unique_sources 1
ヴァッシュ 115076651d155d15555az43=z55

結果は、ハッシュが Cobalt Strike ローダーであることを示しています。これは、Conti 関連会社が運用中にインフラストラクチャの一部としてペネトレーション テスト ツールも使用していることを意味します。

加えて、 VirusTotal モジュールは、検出率、タイプ、説明、およびハッシュに関連するその他の情報などの詳細も提供できます。以下のコード スニペットは、ハッシュが接続するドメインのリストを生成します。

VirusTotal モジュールを使用して接続するドメイン固有のハッシュのリストを生成する Python コードのスクリーンショット。
図 31. 連絡先ドメインの取得
VirusTotal モジュールを使用して、特定のハッシュが接続されているドメインを抽出して生成されたテーブルのスクリーンショット。
図 32. 以前に抽出したハッシュから取得した追加のドメイン

Conti リーク データまたは同様のデータ セットに対してこの種の分析を行うと、初期のデータ セットには含まれていなかった関連ドメインの発見につながる可能性があります。

結論

このブログでは、Python を使用して、チャット ログなどのデータ セットから貴重な脅威インテリジェンスを見つける方法について概説しています。また、MSTICPy ライブラリを使用してデータを処理することが、環境内での強化とハンティング、および追加の脅威コンテキストの収集にどのように役立つかについての詳細も示します。 対話型のノートブックには、ログの探索を続けるためにも使用できる追加のコード スニペットが用意されています。

このブログで抽出された情報の種類は、彼らの活動を調整していた犯罪エコシステムのさまざまな要素への洞察を提供します。このような調査から得られた脅威インテリジェンスは、 Microsoft 365 Defenderなどの製品やサービスに情報を提供し、知識を顧客の実際の保護に変換します。さらに重要なことは、このブログで説明されている方法論は、特定の脅威インテリジェンス サービスに適応できることです。より広範なコミュニティが、さらなる分析、データの強化、すべての利益のためのインテリジェンス共有のために、この方法論を使用するよう招待されています。

トーマス・ロッチャ
Microsoft 365 Defender 研究チーム

参考文献

  • https://krebsonsecurity.com/2022/03/conti-ransomware-group-diaries-part-i-evasion/
  • https://research.checkpoint.com/2022/leaks-of-conti-ransomware-group-paint-picture-of-a-surprisingly-normal-tech-start-up-sort-of/
  • https://therecord.media/conti-leaks-the-panama-papers-of-ransomware/
  • https://www.breachquest.com/conti-leaks-insight-into-a-ransomware-unicorn/
  • https://www.forescout.com/resources/analysis-of-conti-leaks/
  • https://github.com/Res260/conti_202202_leak_procedures
  • https://readme.security/the-conti-leaks-first-rumble-of-the-ukraine-earthquake-thats-rattling-the-cybercrime-underground-7abb23b0fb04
  • https://medium.com/@arnozobec/analyzing-conti-leaks-without-speaking-russian-only-methodology-f5aecc594d1b
  • https://github.com/soufianetahiri/ContiLeaks/blob/main/cobaltsrike_lolbins
  • https://twitter.com/TheDFIRReport/status/1498656118746365952
  • https://www.clearskysec.com/wp-content/uploads/2021/02/Conti-Ransomware.pdf
  • https://blog.bushidotoken.net/2022/04/lessons-from-conti-leaks.html
  • https://www.trellix.com/en-au/about/newsroom/stories/threaks-labs/conti-leaks-examining-the-panama-papers-of-ransomware.html
  • https://msticky.readthedocs.io/en/latest/getting_started/Introduction.html

参照: https://www.microsoft.com/en-us/security/blog/2022/06/01/using-python-to-unearth-a-goldmine-of-threat-intelligence-from-leaked-chat-ログ/

Comments

Copied title and URL