サイト内の現在位置

Stealer Panel を起点とした C2サーバハンティングと攻撃者分析

NECセキュリティブログ

2026年9月18日

目次

本記事は、OSINTを用いたC2(Command and Control)サーバハンティングの実例として、Shodanで観測された管理パネル「Stealer Panel」を起点に、関連するサーバや検体を分析したものです。調査を進めた結果、これらは単一の攻撃基盤ではなく、3つの異なる攻撃活動に分類されると考えています。

本記事では、個々のマルウェアの詳細解説よりも、1つの気になる観測から出発して、検体やインフラの特徴を手がかりに関連ホストへ「ピボット」し、それらを慎重に切り分けていく調査プロセスをご紹介したいと考えています。

本レポートで扱う3つの攻撃活動
攻撃活動A:Django製の Stealer Panel 群。配布・収集API・管理画面が役割分担された情報窃取基盤。
攻撃活動B:Hidden0wn / EsqueleSquad 系。Node.js製の窃取・RAT基盤で、2023年の攻撃者名が検体内に残存。
攻撃活動C:SheetRAT / NonEuclid RAT 系。C2サーバの管理パネル名称は「Stealer Panel」だが、実態はRAT運用基盤。

これら3つは、共通の公開ツール(ChromElevator)や「Stealer Panel」という一般的な名称を使う点で繋がりがありますが、検体の実装・ハッシュ・送信方式・パネルの構成などが異なります。
これらを同一の攻撃者として束ねる訳ではなく、「似ているツールを使う別々の攻撃活動」として切り分けて扱います。

1. 本稿の目的:ハンティングとクラスタリング

本稿では、OSINT調査手法の1つであるC2サーバハンティングの一例を解説します。C2サーバハンティングとは、攻撃者が攻撃に使用するために準備している公開サーバを、能動的な侵入行為を伴わずに、Shodanなどの検索エンジン型サービスや受動的な脅威情報から事前に検出する取り組みを指します。

攻撃インフラを準備段階で捕捉できれば、次のような対応が可能となります。

  • 今後発生し得る攻撃キャンペーンの予測
  • 攻撃規模(感染端末数・対象地域など)の推定
  • 実際の攻撃活動の詳細把握と、事前ブロックによる予防的防御

本稿でもう1つ重視するのが「クラスタリング」です。ピボットで関連しそうなホストが増えていくと、つい1つの大きな攻撃基盤として描きたくなります。しかし、表面的に似ているだけのものを安易に束ねると、誤った全体像や誤帰属につながります。本稿では、何をもって「同じ」とし、何をもって「別」とするかを意識しながら、観測を独立した攻撃活動へ切り分けていきます。

2. 起点:Stealer Panel の発見

調査の起点は、Shodanで確認された管理パネル「Stealer Panel」です。次のクエリで該当ホストを列挙できます。

title:"Stealer Panel"

図1 Shodanで確認した Stealer Panel の検索結果new window[1]
図2 Stealer Panel のログイン画面

該当したホストのうち、調査時点でアクセス可能だったものは限られていました。攻撃インフラは短命であることが多いため、観測できた時点で速やかに記録・保全することが重要です。ここでは、そのうち中身を確認できたホストを起点に調査を進めます。

3. 攻撃活動A:Django Stealer Panel 群

最初に観測内容を具体的に確認できたのは 167.99.146[.]109 です。このホストは、Shodanの観測情報から、次のようなサービスを公開している(または公開していた)ことが分かりました。

ポート 観測内容 役割
1975/tcp Directory listing(SimpleHTTP/0.6 Python/3.12.3) 検体・ペイロードの配布
8000/tcp Login — Stealer Panel(WSGIServer/0.2 CPython) 管理画面(Django)
8080/tcp Login — Stealer Panel 管理画面(Django・別ポート)
443/tcp マルウェアが POST /api/receive/ 窃取データの収集API
図3 Shodanで確認した 167.99.146[.]109 のオープンディレクトリ(1975/tcp)new window[2]

記載の通り、中にはオープンディレクトリになっていたサービスも存在していました。

このオープンディレクトリには、Shodanで確認する限り次のようなファイルが並んでいました。単なるブラウザ情報窃取ツールにとどまらず、シェルコード的なペイロードやWebDAV連携スクリプトも含まれています。

  • chromelevator.exe — Chromiumの資格情報復号に用いる公開ツール ChromElevator を武器化したビルド
  • hbd.bin — Donut系のシェルコード/ペイロードコンテナとみられるバイナリ
  • agent.bin・calc.bin・webdav_runner.ps1 — 追加のペイロードや実行補助スクリプト

VirusTotalで関連検体を確認すると、これらのファイルは実際にマルウェアのコールバック先として参照されていました。収集APIへの送信も含め、配布・収集・管理が同一ホスト上で完結する構成です。

図4 VirusTotalで確認した検体のコールバック先(167.99.146[.]109:1975)new window[3]

3.1 同一パネルを持つ別ホスト

Shodanで同じパネルのフィンガープリント(title hash・DOM hashなど)を手がかりに探すと、178.128.173[.]9:443 が同一のDjangoアプリケーションを稼働させていることが分かりました。これらのフィンガープリントが一致することから、同一のパネルキットを展開したホストである確度は高いと評価します。

3.2 検体内部から得た予備インフラ

武器化された chromelevator.exeを解析すると、稼働中のホストに加えて 174.138.33[.]139 が、同じ3ポート構成(443, 8000, 8080)と同じAPIパス /api/receive/ とともに埋め込まれていました。旧C2・予備C2・開発環境のいずれかとみています。

4. 検体を起点とした横展開

クラスターAが「配布ディレクトリ+公開ツール」で構成されていることから、同じような公開ディレクトリで検体を配る別のホストがあるのではないかと考え、配布物の1つであるchromelevator.exeをファイル名で横断検索しました。

html:chromelevator.exe

図5 Shodanで確認した chromelevator.exe を公開するホストnew window[4]

複数のホストが該当しましたが、その中に、まだ調査していなかった 163.245.206[.]209 が含まれていました。このホストは調査時点でもマルウェアを公開していたため、次の対象として掘り下げます。

ChromElevatorは公開されているツールであり、複数の攻撃キャンペーンで再利用されています。したがって、「chromelevator.exe を配っている」という一点だけでは、これらのホストを同じ攻撃者とは判断できません。
実際、後述のとおり 163.245.206[.]209 は攻撃活動Aとは実装・ハッシュ・送信方式・パネルが異なり、別と評価しています。ここではあくまで次の調査対象を見つけるための「ピボットの足がかり」として扱います。

5. 攻撃活動B:Hidden0wn / EsqueleSquad

163.245.206[.]209 は、:6666 にPython SimpleHTTPの公開ディレクトリを持ち、autoplay.exe・chromelevator.exe・encryptor.exe・hack-browser-data.exe・Windows_Get_Update.exe などを配布していました。

図6 公開継続していたオープンディレクトリのファイル一覧(163.245.206[.]209:6666)
図7 VirusTotalで確認した検体のコールバック先(163.245.206[.]209:6666)new window[5]

5.1 検体内の EsqueleSquad / Hidden0wn 文字列

これらの検体を静的に解析したところ、内部に次の特徴的な文字列が残存していました。

$kull | EsqueleSquad | Hidden0wn

「EsqueleSquad」は、2023年にPyPIやnpmを介して不正パッケージ経由でマルウェアを配布した攻撃者の名称(別名 Skeleton Squad)です。new window[6]new window[7]new window[8]

関連ドメイン hidden0wn[.]xyz は2026-03-15に取得されています。以上から、当該攻撃者による新しい活動、あるいは名称の模倣の可能性が考えられます。EsqueleSquad は広く知られた攻撃者とは言い難く、模倣の動機は相対的に小さいと考えられるため、模倣の可能性はやや低いと評価しますが、断定はできません。

5.2 Hidden0wn パネル

:3000 では「Hidden0wn」というタイトルのExpress製HTTPサーバが稼働していました。調査中、このパネルには複数のセッションが表示されました。

図8 Shodanで確認した Hidden0wn のHTTPサーバ(3000/tcp、Express)new window[9]
図9 hidden0wn[.]xyz のパネル画面(初観測時 Sessions: 0)

パネルには、シェル実行・プロセスやファイルの確認・任意コマンド送信といったリモート操作機能と思われる要素が確認されました。ただし、UI操作で外部へのリクエスト送信が発生しないことから、現状ではモック(見せかけの実装)である可能性が高いと考えます。とはいえ、今後は実際のマルウェア配布とC2運用に転用される可能性があります。

図10 Hidden0wn のパネル画面(Sessions: 5、接続元は一部マスク)

5.3 セッションIPの地理的分布

表示されたセッションが実際の感染端末である可能性を考慮し、接続IP(5件)を国ベースで確認したところ、5 IPのうち3つがロシアでした。

図11 セッションとして表示された接続IPの国別分布

現時点での解釈(両論併記・留保)
実IPであれば:攻撃対象(被害者)を示している可能性があります。
モックであれば:攻撃者の趣向、場合によっては所属国などを示唆している可能性があります。
いずれにせよサンプル数が少なく、現時点でここから確定的な結論を導くことはできません。

5.4 調査中のインフラ閉鎖

調査を進める中で、攻撃者が自身の運用ミスに気づいたとみられ、オープンディレクトリは閉鎖されました。準備段階のインフラが露出している期間は限られるため、露出を検知した時点での迅速な観測・保全がこの種のハンティングでは特に重要です。

図12 調査中に閉鎖され、到達不能となったオープンディレクトリ

5.5 攻撃活動Aとの違い

発見した攻撃活動AとBの違いを考えると、chromelevator.exe という同じ名前のツールを配る点では共通しますが、実体は明確に異なります。

項目 攻撃活動A(167) 攻撃活動B(163)
ChromElevator 独自の武器化ビルド 別ハッシュのビルド
外部へのデータ送信 ツール内から HTTP POST Node.jsオーケストレータがZIP化し FTP送信
管理画面 Django Stealer Panel Express Hidden0wn
内部ブランド (なし) 同じサーバで公開しているWindows_Get_Update内に以下あり
EsqueleSquad / Hidden0wn

評価: 両者は同じ公開技術をそれぞれ別々に武器化した攻撃活動とみるのが妥当です。公開しているファイル名の一致だけでは同一の攻撃者とは言えません。

6. 攻撃活動C:SheetRAT / NonEuclid RAT

SheetRAT / NonEuclid RAT(2.26.99[.]25)

Stealer Panel を探す過程では、名称は同じでも実態の異なるホストも見つかりました。2.26.99[.]25 は、urlscan.ioの保存結果で「Stealer Panel」を表示していましたが、関連する検体の挙動を確認すると、情報窃取専用パネルというよりRAT(遠隔操作型マルウェア)の運用基盤でした。

このホストの証明書CNは fragment[.]sbs で、直接IPと当該ドメインの保存スクリーンショットは一致していました。

6.1 関連マルウェアの一致

VirusTotal上で、少なくとも4件の関連PEが 2.26.99[.]25:9797 にTCP接続していました。これらは次を共有しています。

  • .NETアセンブリ名 SystemInformer、共通の vhash・imphash
  • C:\Program Files\xdwdSearch.exe / C:\Windows\xdwdSearcher.exe へのマルウェア設置
  • スケジュールタスク ShellHost(1分周期)・CookieManager(30分周期)による永続化
  • Windows Firewallへの受信許可ルール追加

これらのファイル名・タスク名・永続化方式は、Triageが SheetRAT(別名NonEuclid RAT) として公開している挙動と一致し、またimphashも一致していました。ファミリー判定の確度は高いと評価します。

攻撃活動Cは、Express/Windows/.NET/:9797 という構成で、Django/Linux/HTTP APIのA、Node.js/Hidden0wnのBのいずれとも一致しません。
「Stealer Panel」というパネルのタイトルは一致するものの、別物であると考えます。

7. 各攻撃活動の関係評価

以上の観測を、攻撃活動間の関係として整理します。CTIの原則に従い、観測事実と推定を区別し、断定を避けています。

関係 評価 確度 主な根拠
167 ↔ 178 同一パネル実装 title/DOM/Serverの各hash・ヘッダ・本文長が一致
167 ↔ 174 同一設定内の現行・予備インフラ 検体内に両IP・同一ポート・同一 /api/receive/
167 ↔ 163 公開ツール再利用以上は未立証 ビルド・imphash・送信方式・パネルが相違
2.26.99[.]25 ↔ 他 別系統 OS・実装・パネル技術・C2ポートが相違

8. まとめ

本事例では、Shodanで見つけた1つの「Stealer Panel」を起点に、検体やインフラの特徴を手がかりにピボットを重ねることで、少なくとも3つの独立した攻撃活動を発見しました。同時に、表面的に似ているものも、詳細に確認すると違いが出ることから、帰属を考える際には慎重な切り分けが重要であることも示しています。

公開サーバを継続的に調査することは、攻撃活動が実行される前にそれを検出する有効な手法の1つです。悪性サーバを早期に検出してブロックすることで、予防的な対策が可能となります。

  • 防御者の皆さまは、付録AのIOCを自組織のプロキシ/EDR/ネットワーク監視に投入し、ヒットの有無を確認されることを推奨します。
  • パネルのフィンガープリント(title/DOM/Server hash)やポート構成も含めて同一実装であれば、Stealer PanelなどといったHTMLタイトルによる調査よりも精度の高いハンティングになりえます。

本レポートが、組織のセキュリティをより堅固にするための一助になれば幸いです。

付録A:IOC 一覧

防御的な検知・ハンティング目的でご利用ください。ネットワークインジケータはデファング表記としています。

A.1 ネットワークIOC

分類 インジケータ 備考
A 167.99.146[.]109:1975 / :443 / :8000 / :8080 配布・収集API・管理画面
A 178.128.173[.]9:443 同一Djangoパネル(兄弟ホスト)
A 174.138.33[.]139:443 解析検体からのアクセス先
B 163.245.206[.]209:6666 / :3000 配布ディレクトリ・Hidden0wnパネル
B hidden0wn[.]xyz 2026-03-15取得
C 2.26.99[.]25:9797 SheetRAT / NonEuclid RAT のC2
C fragment[.]sbs 同一オリジンの証明書CN

A.2 ハッシュ(SHA-256)

分類 ファイル名 SHA-256
A chromelevator.exe 947bd10c0d49d78c902ac01f2d85ee6ca982c1e4b767296ac7b968872d9c48f0
A hbd.bin 5a9c0c03def8ae191f14e319ec136e48d2b51a78ba02accc367000d31e3a3cad
A q8h31ali9.exe 0b2fe271e7fd3a5bd7296b896f78650b11dbd1f73e0ed173322c873e415bbfd0
A 9s6qcsdk.exe 1958f58afa200959029990e27bb5fcb180065e3e6eba99430e0b7a59d6d9c428
C xdwdSearch.exe, SystemInformerなどの
名称のファイル
078904a2c5769e8a5a01635a122287e8fbb5b0e586c9ba65ab0d71e50596d377
14c2d48751b5c0475a03457edcfdabea1860f07af3210e293be0a5283cb554ef
3f3792bd665e94961087621a2f1c0ded1b47970b0bf33f9c8ce69e9912515f79
9486e101efa0b00ae1013f78baa78cc00337097c00aeb0797035fc0fb1f35295
C autoplay.exe baf0f2f6d5c01b8281f8674417373e6ea97534ea6f66dc28486e99dfa3e6a74c
C Windows_Get_Update.exe b24c32f41e580b1ea8456de0d0bb2310c3980c82f3dbfa36f9bbfdb850f4d993
C chromelevator.exe 66d186f2288d877a47278d96860018bbfdc6a3fb44acb9cace1dd0e4bee9c5e9
C encryptor.exe 6c9b0cd1d20320f8950e6527ecfb2dfc1a2dbc9044afecc7f4758d1b408869dc
C hack-browser-data.exe 3e628fd15004062a5010589e7d4f76c9ad4cb905522a2cf5c49eca04ac137fc5

参考(2023年 EsqueleSquad 検体):

  • WindowsCache.exe / Esquele.exe: 8ab8ddfa3f61334cf9386b62aea3a761852b3d785d9f21b8a638cc42b0af7afd
    update.exe: 51162376051669cbf4d2b11b1300ba7be6758ca0ca1979ce736fe70ae7289bc2

参考文献

執筆者プロフィール

大芝 大(おおしば ひろし)
担当領域:サイバーセキュリティインテリジェンス
専門分野:サイバーセキュリティインテリジェンス

CyIOCサービスにてCTIアナリストとして従事。

執筆者の他の記事を読む

アクセスランキング