はじめに
レッドチームやペネトレーションテストの現場では、**「どうやって C2 通信を成立させるか」**が常に問題になります。
特に企業ネットワークでは、外向き通信が厳しく制限されているケースが珍しくありません。
- HTTP/HTTPS はプロキシ必須
- 不審な User-Agent は即ブロック
- DNS トンネリングは SOC に顔パス
こうした環境で真価を発揮するのが SMB Listener(Named Pipes を利用した C2) です。
本記事では、SMB Named Pipes を用いた C2 通信の仕組み・利点・利用シーン・防御側視点までを、実践目線で解説します。
SMB Listener とは何か
SMB Listener とは、
SMB(Server Message Block)プロトコル上の Named Pipe(命名パイプ)を利用して、C2 とエージェント間の通信を行う方式です。
Named Pipe は Windows における IPC(Inter-Process Communication) の一種で、以下のような特徴があります。
- Windows に標準搭載
- 内部通信・管理用途で多用される
- ネットワーク越しにも使用可能(SMB 経由)
つまり SMB Listener は、
「Windows が普段から使っている“正規の通信経路”を、そのまま C2 に転用する」
という発想に基づいた通信方式です。
なぜ SMB Named Pipes が選ばれるのか
1. 制限されたネットワークに強い
多くの企業ネットワークでは以下が成立しています。
- ❌ インターネットへの直接通信は禁止
- ❌ 任意の TCP ポートは閉鎖
- ✅ SMB(445/TCP)は内部通信のため開放
この状況で HTTP C2 を通そうとすると、
- プロキシ認証
- TLS インスペクション
- 通信内容の可視化
と、OPSEC 的に不利な条件が揃います。
一方 SMB は 「内向き通信」 として扱われやすく、
Named Pipe を使えば 外に出ない C2 を構築できます。
2. Pivot・横展開に非常に強い
SMB Listener は Lateral Movement 向け C2 として優秀です。
典型的な構成は次の通りです。
- 1 台の Pivot Host のみが HTTP/HTTPS で外部 C2 と通信
- 他の内部ホストは SMB Named Pipe 経由で Pivot に接続
- 内部ネットワーク内で C2 を多段展開
結果として、
- 外向き通信は最小限
- 内部ホストは「内輪の会話」だけ
という、非常に静かな構造になります。
3. Windows の“日常動作”に溶け込む
Named Pipe は以下のような Windows コンポーネントでも日常的に使われています。
lsasssvcctlsamrspoolss
そのため、
- 「Named Pipe が使われている」だけでは異常と判断できない
- SMB を全面的に遮断すると業務が破綻する
という事情があり、防御側が雑に止めにくいのが大きな利点です。
Metasploit における SMB / Named Pipe C2
Metasploit Framework は SMB Named Pipe を正式にサポートしています。
代表的な Payload
windows/meterpreter/reverse_named_pipewindows/x64/meterpreter/reverse_named_pipe
通信の特徴
- SMB セッション上で通信
-
\\.\pipe\<pipe_name>を使用 - Pipe 名は指定・ランダム化が可能
これにより、HTTP ベースの Meterpreter と組み合わせた ハイブリッド C2 構成が可能になります。
攻撃チェーン上での位置づけ
SMB Listener は 初期侵入向けではありません。
役割は明確です。
| フェーズ | 適性 |
|---|---|
| Initial Access | ❌ |
| Execution | ⚠️ |
| Persistence | ⚠️ |
| Lateral Movement | ✅ |
| Command & Control | ✅(内向き) |
| Pivoting | ✅ |
要するに、
「侵入後の世界で使う C2」
です。
OPSEC 観点での評価
レッドチーム側のメリット
- 外向き通信を最小化できる
- 内部通信に擬態しやすい
- Pivot 構成と相性が良い
- プロキシ・WAF を回避可能
ブルーチーム側の検知ポイント(高度)
ただし万能ではありません。
- 不自然な Named Pipe 名
- 非標準プロセスによる Pipe 作成
- SMB セッション内の周期的ビーコン
- 通信サイズ・間隔の規則性
EDR + 行動分析 があれば検知は可能です。
つまりこれは「隠れる技術」であって「不可視」ではありません。
どんな場面で使うべきか
適しているケース
- 内部 Windows 環境が中心
- 外向き通信が制限されている
- 多段 Pivot が必要
- OPSEC を重視する演習・検証
適さないケース
- インターネット公開サーバ
- Linux 中心の環境
- 445/TCP が厳密に遮断されているネットワーク
まとめ
SMB Named Pipe Listener は、
- 出るための C2 ではなく
- 内側で生き続けるための C2
です。
HTTP や DNS が「外と話す言語」だとすれば、
SMB Named Pipes は 「内輪の方言」。
制限されたネットワーク環境において、
この“方言”を理解しているかどうかが、
攻撃側・防御側の成熟度を分けます。