Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/redteampentesting/pretender
偵察情報収集ネットワークセキュリティペネトレーションテスト認証レッドチーミングDNS分析
GitHubredteampentesting/pretender

pretender

DHCPv6 DNSテイクオーバーやmDNS、LLMNR、NetBIOS-NSスプーフィングを特徴とする、攻撃中継のためのあなたのMitM相棒。

リポジトリを見る
1.3k971ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

pretender

リレー攻撃のためのMitM相棒。DHCPv6 DNSテイクオーバー、mDNS、LLMNR、NetBIOS-NSスプーフィングを備えています

Release GitHub Action: Check Software License Go Report Card


pretenderは、RedTeam Pentestingによって開発されたツールで、偽装されたローカル名前解決とDHCPv6 DNSテイクオーバー攻撃を介して中間者(MitM)の位置を取得します。pretenderは主にWindowsホストを対象としていますが、リレー攻撃に使用することを意図しており、Linux、Windows、およびGoがサポートする他のすべてのプラットフォームに展開できます。名前解決クエリは、リレーツールがpretenderとは異なるホストで実行されている状況のために、任意のIPで応答できます。これは、リレー攻撃やハッシュダンプのために着信接続を処理するImpacketの ntlmrelayx.pyやkrbrelayxなどのツールと連携するように設計されています。

DHCPv6 DNSテイクオーバー、ローカル名前解決スプーフィング、リレー攻撃の詳細については、ブログ記事をお読みください。


Usage

ローカルネットワークの状況を把握するために、pretenderを--dryモードで起動できます。このモードでは、受信したクエリをログに記録するだけで、応答は返しません。

root@kitploit:~
pretender -i eth0 --dry
pretender -i eth0 --dry --no-ra # without router advertisements (RA)
pretender -i eth0 --dry --no-ra-dns # with RA but without advertizing DNS in RA

mDNS、LLMNR、NetBIOS-NSによるローカル名前解決スプーフィングと、ルーター通知によるDHCPv6 DNSテイクオーバーを実行するには、次のようにpretenderを実行するだけです。

root@kitploit:~
pretender -i eth0

--no-dhcp-dns(DHCPv6、DNS、ルーター通知を無効化)、--no-lnr(mDNS、LLMNR、NetBIOS-NSを無効化)、--no-mdns、--no-llmnr、--no-netbios、--no-raを使用して特定の攻撃を無効にできます。

ntlmrelayx.pyが別のホスト(例:10.0.0.10/fe80::5)で実行されている場合は、次のようにpretenderを実行します。

root@kitploit:~
pretender -i eth0 -4 "10.0.0.10" -6 "fe80::5"

Pretenderは、特定のドメインに対するクエリのみ(または特定のドメイン以外のすべて)に応答し、特定のホストのみ(または特定のホスト以外のすべて)に対してスプーフィング攻撃を実行するように設定できます。ホスト名によるホストの参照は、pretenderを実行しているホストの名前解決に依存します。次の例を参照してください。

root@kitploit:~
pretender -i eth0 --spoof "example.com" --dont-spoof-for "10.0.0.3,host1.corp,fe80::f" --ignore-nofqdn

詳細については、pretender --helpを実行してください。


Tips

  • オプション--spoof/--dont-spoof/--spoof-for/--dont-spoof-forはワイルドカードをサポートします。domain.fqdnはリテラル一致のみを行いますが、.domain.fqdnはdomain.fqdnとsub.domain.fqdnの両方に一致します。同様に、*domain.fqdnはmydomain.fqdnに一致します。サブドメインのみに一致させるには*.domain.fqdnを使用してください。サブドメインワイルドカード(先頭の.)と任意のワイルドカード(*)は併用できないことに注意してください。
  • ntlmrelayx.pyでIPv6サポートを有効にするには、-6フラグを使用してください。
  • Pretenderは、--stateless-raフラグを使用して、DHCPv6なしでルーター通知を介したステートレスDNS設定をサポートします。デフォルトではDHCPv6サーバーは起動されますが、--no-dhcpを使用して無効にできます。
  • --dont-spoof/フィルターが存在し、でアップストリームDNSサーバーが設定されていない場合、ルーター通知はDNSサーバーを直接アドバタイズしなくなり、攻撃の効果が低下します。

Building and Vendoring

Pretenderは次のようにビルドできます。

root@kitploit:~
go build

Pretenderは事前設定された設定でコンパイルすることもできます。そのためには、ldflagsを次のように変更する必要があります。

root@kitploit:~
-ldflags '-X main.vendorInterface=eth1'

例えば、Pretenderは特定のデフォルトインターフェース、色付き出力なし、リレーIPv4アドレスを設定してWindows用にビルドできます。

root@kitploit:~
GOOS=windows go build -trimpath -ldflags '-X "main.vendorInterface=Ethernet 2" -X main.vendorNoColor=true -X main.vendorRelayIPv4=10.0.0.10'

ベンダリングオプションの完全なリスト(詳細はdefaults.goまたはpretender --helpを参照):

root@kitploit:~
vendorInterface
vendorRelayIPv4
vendorRelayIPv6
vendorSOAHostname
vendorSpoofResponseName
vendorNoDHCPv6DNSTakeover
vendorNoDHCPv6
vendorNoDNS
vendorNoMDNS
vendorNoNetBIOS
vendorNoLLMNR
vendorNoLocalNameResolution
vendorNoIPv6LNR
vendorNoRA
vendorNoRADNS
vendorSpoof
vendorDontSpoof
vendorSpoofFor
vendorDontSpoofFor
vendorSpoofTypes
vendorSpoofSRV
vendorIgnoreDHCPv6NoFQDN
vendorIgnoreNonMicrosoftDHCP
vendorDelegateIgnoredTo
vendorToggleNameResolutionSpoofing
vendorDontSendEmptyReplies
vendorDryMode
vendorDryWithDHCPMode
vendorStatelessRA
vendorTTL
vendorLeaseLifetime
vendorRARouterLifetime
vendorRAPeriod
vendorDNSTimeout
vendorStopAfter
vendorVerbose
vendorNoColor
vendorNoTimestamps
vendorLogFileName
vendorNoHostInfo
vendorHideIgnored
vendorRedirectStderr
vendorListInterfaces
ツールをダウンロード
--dont-spoof-for
--delegate-ignored-to
  • Pretenderは、手動で中断できない状況に備えて、一定時間後に停止するように設定できます(--stop-afterおよびmain.vendorStopAfter)。
  • ホスト情報の検索(ARPテーブル、IPネイバー、逆引きに依存)は、--no-host-infoまたはmain.vendorNoHostInfoで無効にできます。
  • どのインターフェースを選択すればよいかわからない場合(特にWindows)、--interfacesを使用して名前とアドレスとともにすべてのインターフェースを一覧表示できます。
  • ローカル名前解決スプーフィングからホストを除外する場合は、そのIPv6アドレスも除外するか、--no-ipv6-lnr/main.vendorNoIPv6LNRを使用してください。
  • DHCPv6メッセージには通常、FQDNオプションが含まれています(FQDNではないホスト名が含まれることもあります)。このオプションは、ホスト名でメッセージをフィルタリングするために使用されます(--spoof-for/--dont-spoof-for)。FQDNオプションのないDHCPv6メッセージの処理方法は、--ignore-nofqdnを設定するか省略することで決定できます。
  • ビルド構成によって、オペレーティングシステムのリゾルバ(CGO_ENABLED=1)またはGo実装(CGO_ENABLED=0)のいずれかが使用されます。これはホスト情報の収集にとって重要です。OSリゾルバはローカル名前解決をサポートする場合がありますが、Go実装はスタブリゾルバが使用されない限りサポートしないためです。
  • ホスト情報機能は現在WindowsとLinuxでのみ利用可能です。
  • カスタムMACアドレスベンダーリストは、デフォルトのリストhostinfo/mac-vendors.txtを置き換えることでバイナリにコンパイルできます。次の形式のMACプレフィックス行のみ認識されます:FF:FF:FF<tab>VendorID<tab>Vendor(MACプレフィックス長は任意)。
  • 動的更新を介してKerberosリレーのみを実行したい場合は、--no-lnrと--spoof-types SOAを指定して、攻撃に関係しないクエリを無視できます。
  • krbrelayx.pyがpretenderとは異なるホストで実行されているKerberosリレー攻撃を実施する場合(リレーIPv4アドレスがkrbrelayx.pyを実行する別のホストを指す場合)、krbrelayx.pyを実行するホストもpretenderを実行する必要があります。これは、リレーIPv4アドレスに送信されたDynamic Updateクエリを受信して拒否するためです。
  • デフォルトでは、DHCPv6 DNSテイクオーバー中の混乱を制限するために、--delegate-ignored-to <DNSサーバー>オプションを使用して、無視されたクエリを正当なDNSサーバーに委任できます。
  • --dry-with-dhcpオプションは--delegate-ignored-toと組み合わせて、ネットワーク内の名前解決クエリを混乱なく監視できます。
  • --ignore-non-microsoft-dhcpを指定することで、非WindowsクライアントからのDHCPメッセージを無視できます。これは、Windows DHCPクライアントがDHCPベンダーオプションにMicrosoftのエンタープライズ番号311を含めるため可能です。
  • --toggleを使用すると、名前解決スプーフィング(DNS、mDNS、LLMNR、NetBIOS)を実行時に動的に有効/無効にできます。これは特に--delegate-ignored-toと組み合わせて、DHCPサーバーを停止せずに攻撃を開始/停止する場合に強力です。これは、Windows DHCPクライアントが一定時間DHCPサーバーに到達できずにアドレスのリースを停止した場合の回避策として使用できます。