Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Inveigh — .NET IPv4/IPv6 Machine-in-the-Middle-Tool für Penetrationstester | Kitploit
Tools/GitHubGitHub/kevin-robertson/inveigh
PenetrationstestsRed Teaming
GitHubkevin-robertson/inveigh

Inveigh

.NET IPv4/IPv6 Machine-in-the-Middle-Tool für Penetrationstester

Repository anzeigen
3.0k47213vor 10 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Inveigh

Inveigh ist ein plattformübergreifendes .NET IPv4/IPv6 Man-in-the-Middle-Werkzeug für Penetrationstester. Dieses Repository enthält die primäre C#-Version sowie die ältere PowerShell-Version.

Übersicht

Inveigh führt Spoofing-Angriffe und Hash-/Credential-Erfassungen sowohl durch Paketmitschnitt als auch durch protokollspezifische Listener/Sockets durch. Die Paketmitschnitt-Methode, die die Grundlage für die ursprüngliche PowerShell-Version dieses Tools bildete, bietet die folgenden Vorteile:

  • SMB NTLM Challenge/Response-Erfassungen über den Windows SMB-Dienst
  • Weniger sichtbare Portbindungen auf dem Hostsystem

Der Hauptnachteil ist die erforderliche erhöhte Zugriffsberechtigung.

In aktuellen Windows-Versionen erlauben die standardmäßig ausgeführten UDP-Dienste die Wiederverwendung von Ports. Daher bietet das Paketmitschnitt keinen Vorteil mehr, um belegte UDP-Ports zu umgehen. Die UDP-Listener von Inveigh sind alle so konfiguriert, dass sie die Portwiederverwendung nutzen.

Versionsbeschreibungen

  • PowerShell Inveigh - ursprüngliche Version, die über viele Jahre entwickelt wurde. Zumindest vorerst wird diese Version (1.506) ohne weitere Updates bleiben. Die Dokumentation finden Sie hier.
  • C# Inveigh (auch bekannt als InveighZero) - ursprünglicher C# POC-Code kombiniert mit einem C#-Port des Großteils des Codes der PowerShell-Version. Diese Version wurde nun für C# neu aufgebaut und wird zur primären Version.

Funktionen

Die C#-Version von Inveigh enthält Angriffe für die folgenden Protokolle:

  • LLMNR [Paketmitschnitt | Listener]
  • DNS [Paketmitschnitt | Listener]
  • mDNS [Paketmitschnitt | Listener]
  • NBNS [Paketmitschnitt | Listener]
  • DHCPv6 [Paketmitschnitt | Listener]
  • ICMPv6 [privilegierter Raw Socket]
  • HTTP [Listener]
  • HTTPS [Listener]
  • SMB [Paketmitschnitt | Listener]
  • LDAP [Listener]
  • WebDAV [Listener]
  • Proxy-Authentifizierung [Listener]

Inveigh arbeitet sowohl mit IPv4 als auch IPv6, wenn das zugrunde liegende Protokoll beide unterstützt.

Plattformübergreifende Unterstützung

Die SDK-Projektdatei von Inveigh ist für .NET 3.5, 4.6.2 und 6.0 eingerichtet, wobei 6.0 die Version ist, die auch unter Linux und macOS funktioniert.

<TargetFrameworks>net35;net62;net6.0</TargetFrameworks>

Bekannte Probleme

  • Der Paketmitschnitt ist nur unter Windows verfügbar aufgrund von Unterschieden in den Raw-Socket-Einrichtungen. Wenn für Linux oder macOS kompiliert wird, wird der Paketmitschnitt einfach deaktiviert. Stattdessen kann der SMB-Listener von Inveigh verwendet werden, wenn Port 445 offen ist.
  • macOS erfordert, dass Routen zum Beitreten zu Multicast-Gruppen verfügbar sind. In meinen Tests musste ich Routen für DHCPv6-Multicast hinzufügen, um diesen Angriff auf dieser Plattform durchzuführen.
    sudo route -nv add -net ff02::1:2 -interface en0

Ausführung

dotnet Inveigh.dll

Plattformspezifische Builds für Linux/macOS

  • Mit .NET 6.0 auf dem Zielsystem installiert
    dotnet publish -r linux-x64 -f net8.0 -p:AssemblyName=inveigh
    dotnet publish -r osx-x64 -f net8.0 -p:AssemblyName=inveigh

  • Ohne .NET 6.0 auf dem Zielsystem installiert
    dotnet publish --self-contained=true -p:PublishSingleFile=true -r linux-x64 -f net8.0 -p:AssemblyName=inveigh
    dotnet publish --self-contained=true -p:PublishSingleFile=true -r osx-x64 -f net8.0 -p:AssemblyName=inveigh

Verwendung

Die Standardparameterwerte befinden sich am Anfang von Program.cs. Ich empfehle, alles zu überprüfen und an Ihre Bedürfnisse anzupassen, bevor Sie kompilieren. Alle Aktivierungs-/Deaktivierungsparameter können mit den Werten Y/N gesetzt werden.``` //begin parameters - set defaults as needed before compile public static string argCert = "MIIKaQIBAzCCC..." public static string argCertPassword = "password"; public static string argChallenge = ""; public static string argConsole = "5"; public static string argConsoleLimit = "-1"; public static string argConsoleStatus = "0"; public static string argConsoleUnique = "Y"; public static string argDHCPv6 = "N"; public static string argDHCPv6TTL = "30"; public static string argDNS = "Y"; ... //end parameters

### Parameter Hilfe```
.\Inveigh.exe -?

Control:

  -Inspect        Default=Disabled: (Y/N) inspect traffic only.

  -IPv4           Default=Enabled: (Y/N) IPv4 spoofing/capture.

  -IPv6           Default=Enabled: (Y/N) IPv6 spoofing/capture.

  -RunCount       Default=Unlimited: Number of NetNTLM captures to perform before auto-exiting.

  -RunTime        Default=Unlimited: Run time duration in minutes.


Output:

  -Console        Default=5: Set the level for console output. (0=none, 1=only captures/spoofs, 2=no disabled, no informational, 3=no disabled, no filtered, 4=no disabled, 5=all)  

  -ConsoleLimit   Default=Unlimited: Limit to queued console entries.

  -ConsoleStatus  Default=Disabled: Interval in minutes for auto-displaying capture details.

  -ConsoleUnique  Default=Enabled: (Y/N) displaying only unique (user and system combination) hashes at time of capture.

  -FileDirectory  Default=Working Directory: Valid path to an output directory for enabled file output.

  -FileOutput     Default=Enabled: (Y/N) real time file output.

  -FilePrefix     Default=Inveigh: Prefix for all output files.

  -FileUnique     Default=Enabled: (Y/N) outputting only unique (user and system combination) hashes.

  -LogOutput      Default=Disabled: (Y/N) outputting log entries.


Spoofers:

  -DHCPV6         Default=Disabled: (Y/N) DHCPv6 spoofing.

  -DHCPv6TTL      Default=300: Lease lifetime in seconds.

  -DNS            Default=Enabled: (Y/N) DNS spoofing.

  -DNSHost        Fully qualified hostname to use SOA/SRV responses.

  -DNSSRV         Default=LDAP: Comma separated list of SRV request services to answer.

  -DNSSuffix      DNS search suffix to include in DHCPv6/ICMPv6 responses.

  -DNSTTL         Default=30: DNS TTL in seconds.

  -DNSTYPES       Default=A: (A, AAAA, SOA, SRV) Comma separated list of DNS types to spoof.

  -ICMPv6         Default=Enabled: (Y/N) sending ICMPv6 router advertisements.

  -ICMPv6Interval Default=200: ICMPv6 RA interval in seconds.
  
  -ICMPv6TTL	  Default=300: ICMPv6 TTL in seconds.

  -IgnoreDomains  Default=None: Comma separated list of domains to ignore when spoofing.



  -IgnoreIPs      Default=Local: Comma separated list of source IP addresses to ignore when spoofing.

  -IgnoreMACs     Default=Local: Comma separated list of MAC addresses to ignore when DHCPv6 spoofing.
  
  -IgnoreQueries  Default=None: Comma separated list of name queries to ignore when spoofing.

  -Local          Default=Disabled: (Y/N) performing spoofing attacks against the host system.

  -LLMNR          Default=Enabled: (Y/N) LLMNR spoofing.

  -LLMNRTTL       Default=30: LLMNR TTL in seconds.

  -MAC            Local MAC address for DHCPv6.

  -MDNS           Default=Enabled: (Y/N) mDNS spoofing.

  -MDNSQuestions  Default=QU,QM: Comma separated list of question types to spoof. (QU,QM)

  -MDNSTTL        Default=120: mDNS TTL in seconds.

  -MDNSTypes      Default=A: Comma separated list of mDNS record types to spoof. (A,AAAA,ANY)

  -MDNSUnicast    Default=Enabled: (Y/N) sending a unicast only response to a QM request.

  -NBNS           Default=Disabled: (Y/N) NBNS spoofing.

  -NBNSTTL        Default=165: NBNS TTL in seconds.

  -NBNSTypes      Default=00,20: Comma separated list of NBNS types to spoof. (00,03,20,1B)

  -ReplyToDomains Default=All: Comma separated list of domains to respond to when spoofing.

  -ReplyToIPs     Default=All: Comma separated list of source IP addresses to respond to when spoofing.
Tool herunterladen