Mercurial-Grabber — 情報窃取型マルウェアのリポジトリ解析
概要
Mercurial-Grabberは、Discordトークン、Google Chromeのパスワードやクッキー、RobloxやMinecraft関連の情報などを収集することを目的としたC#実装の情報窃取ツール(いわゆる「グラバー」)のリポジトリです。公開されているREADMEやリリースにはビルダーのプレビューが含まれ、被害端末から各種認証情報やシステム情報、地理位置情報、スクリーンショットなどを取得して外部へ送信する機能が列挙されています。セキュリティ研究者や防御担当者が脅威の理解と検出・対策を行うための観点から解析することが重要です。
リポジトリの統計情報
- スター数: 78
- フォーク数: 3
- ウォッチャー数: 78
- コミット数: 30
- ファイル数: 5
- メインの言語: C#
主な特徴
- Discordトークン、ブラウザパスワード、クッキーなどの資格情報収集に対応
- RobloxやMinecraftセッションの窃取機能を含むゲーム関連情報の収集
- 被害端末の情報(IP、ジオロケーション、Windowsプロダクトキー、スクリーン等)の取得
- ビルダー(カスタム実行ファイル作成)機能が公開されている可能性
技術的なポイント
このリポジトリはC#(.NET)で書かれており、典型的な情報窃取マルウェアの実装パターンを多数含んでいるとREADMEから読み取れます。高レベルでは、(1)ローカルに保存された資格情報やセッション情報を探索して収集、(2)システム情報やネットワーク関連の情報を取得、(3)収集データを外部に送信する、という3つの機能群に分かれます。ブラウザ関連では、Chrome系ブラウザのパスワードやクッキーを取得すると明記されており、これは一般にローカルプロファイル内のファイルを読み取る手法や、暗号化されたストレージから復号して抽出する処理を伴います(ただし本稿では具体的手順は記述しません)。Discordトークン等の窃取は、ユーザーのローカルストレージやアプリケーションデータを探査してトークン文字列を抽出する手法が一般的です。
リポジトリにビルダーやリリース用のバイナリが含まれている点は注目に値します。ビルダーは攻撃者が設定を選んでカスタム実行ファイルを生成できることが多く、検出回避オプションやビルド時の埋め込みデータ(Webhook先やC2のアドレス)を設定する機能を持つことがあります。また、スクリーンショット取得やジオロケーション取得、Windowsプロダクトキー抽出といった機能は、攻撃の横展開や追加的な情報収集に利用され得ます。
防御上は、実行ファイルの信頼性確認、EDR/アンチウイルスによる振る舞い検出、ブラウザやアプリケーションの機密情報保護(マスターパスワードの設定、プロファイル暗号化)、ネットワーク出口での未知の外部送信先のブロックなど複合的対策が必要です。さらに、ソースコードやビルダーが公開されていると、低スキルな攻撃者でも即時に悪用しやすくなります。したがって、セキュリティ運用者はこの種の公開リポジトリを監視し、公開情報からインジケーター(ファイル名、ハッシュ、C2ドメイン、Webhook URLなど)を抽出して検出ルールを整備することが重要です。
※ 本記事は教育・防御目的の解析に限定しており、リポジトリの悪用手順や具体的な窃取方法の実施法は記載していません。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitattributes: file
- .gitignore: file
- Mercurial.sln: file
- Mercurial: dir
- README.md: file
READMEの抜粋(機能リストより):
- Roblox StudioからのRobloxクッキー取得
- Minecraftセッションの取得
- Google Chromeのパスワード・クッキーの取得
- Discordトークンの取得
- 被害機の情報取得、Windowsプロダクトキー、IP・ジオロケーション、スクリーンショット取得 等
検出と対策(補足)
- エンドポイント保護:EDRや最新のアンチウイルスを導入し、疑わしいプロセスの挙動(大量のファイル読み取り、外部への平文送信、プロセスインジェクション等)を監視する。
- アプリケーション設定:ブラウザや重要アプリに対してマスターパスワードやプロファイル暗号化を適用し、ローカルストレージのみで簡単に資格情報が読めないようにする。
- ネットワーク防御:アウトバウンド通信のフィルタリングで未知のWebhookやC2ドメインへの接続をブロックし、疑わしい通信はサンドボックスで解析する。
- ユーザ教育:不審な添付ファイルやダウンロード行為を避ける、ソフトウェアは公式配布元からのみ入手するなどの基本対策を徹底する。
- インシデント対応:感染疑いがある場合は速やかにネットワークから隔離し、フォレンジックで侵害指標を収集、必要に応じてパスワードのリセットや多要素認証の導入を行う。
まとめ
公開リポジトリとしての拡散は悪用リスクを高めるため、防御側は早急にインジケーター収集と検出ルール整備を行うべきです。
リポジトリ情報:
- 名前: Mercurial-Grabber
- 説明: Grab Discord tokens, Chrome passwords and cookies, and more
- スター数: 78
- 言語: C#
- URL: https://github.com/DannySosa01/Mercurial-Grabber
- オーナー: DannySosa01
- アバター: https://avatars.githubusercontent.com/u/70674734?v=4