
Phantom Tap (PhanTap) - レッドチーム向けの「見えない」ネットワークタップ

PhanTap はレッドチームを対象とした「不可視の」ネットワークタップです。対象の建物への限定的な物理アクセスがあれば、このタップはネットワーク機器と企業ネットワークの間にインラインで設置できます。PhanTap はネットワーク上で静かであり、NAC(Network Access Control 802.1X - 2004)があるネットワークでも、被害者のトラフィックに影響を与えません。 PhanTap はネットワーク上のトラフィックを分析し、自身のトラフィックを被害者デバイスとして偽装します。 リモートサーバーへのトンネルを確立でき、ユーザーはさらなる分析やピボットのための足掛かりをネットワーク内に得られます。 PhanTap は OpenWrt パッケージであり、あらゆるデバイスと互換性があるはずです。テストで使用した物理デバイスは、現在のところ小型で安価なルーター GL.iNet GL-AR150 です。 PhanTap を解説した詳細なブログ記事はこちらです。
PhanTap は GL.iNet GL-AR150 でテストされています。このデバイスには OpenWrt 上で独立した 2 つのネットワークインターフェース(eth0、eth1)があります。 デバイスが内部スイッチ(swconfig ベース)を使用していて、eth0.1、eth0.2 のようなインターフェースの場合、802.1Q(タグ付き VLAN)などの一部の特殊なトラフィックがブロックされる可能性がありますが、PhanTap は動作するはずです。
opkg update
opkg install phantap
/etc/init.d/phantap setup を実行します。# uci show network | grep -E 'device=|ports='
network.loopback.device='lo'
network.@device[0].ports='eth0'
network.lan.device='br-lan'
network.wan.device='eth1'
network.wan6.device='eth1'
network.phantap.device='br-phantap'
この例では、2 つのインターフェースしか持たない GL-AR150 を使用しています。
uci delete network.@device[0].ports
uci delete network.wan.device
uci delete network.wan6.device
uci add_list network.br_phantap.ports='eth0'
uci add_list network.br_phantap.ports='eth1'
uci commit network
/etc/init.d/network reload
Phantap は設定済みです。被害者とそのスイッチの間に挿入すると、ルーターを自動的に設定し、インターネットアクセスを提供します。
お好みの VPN を追加して、リモート接続を戻すことができます。PhanTap は、一部の検出方法を回避するために、OpenVpn の TCP ポート 443 でテストしています。
/etc/config/phantap で、新しい IP または DNS が設定されたときに実行するコマンドを追加することもできます(例: /etc/init.d/openvpn restart(OpenVpn サービスの再起動))。
デフォルトで wifi を無効にし、ハードウェアボタンで起動する方法も検討できます(https://openwrt.org/docs/guide-user/hardware/hardware.button)。