Kevin-Robertson/Inveigh

.NET IPv4/IPv6 machine-in-the-middle tool for penetration testers

View on GitHub ↗Jump to charts ↓

Kevin-Robertson/Inveigh has 3k+ stars and 450+ forks on GitHub, is written in C#, and was last pushed on Nov 19, 2025. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 28 minutes ago
Added to GitGenius on September 22nd, 2026
Created on April 2nd, 2015
Open Issues & Pull Requests: 20 (+0)
GitHub issues: Enabled
Number of forks: 472
Total Stargazers: 3,043 (+0)
Total Subscribers: 112 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.
Sign in

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Inveigh is a cross-platform .NET machine-in-the-middle tool for penetration testers that conducts spoofing attacks and captures credentials across IPv4 and IPv6 networks.

The tool addresses the need to intercept network traffic and extract authentication material during penetration tests. It operates through two complementary methods: packet sniffing, which captures traffic directly from the network interface, and protocol-specific listeners that bind to network ports. The packet sniffing approach offers advantages including the ability to capture SMB NTLM challenge-response exchanges and reduced visibility through fewer port binds, though it requires elevated access. The tool supports attacks across multiple protocols including LLMNR, DNS, mDNS, NBNS, DHCPv6, ICMPv6, HTTP, HTTPS, SMB, LDAP, WebDAV, and proxy authentication.

Inveigh suits penetration testers who need flexible credential capture across multiple protocols in both Windows and Unix environments. The C# version is the primary implementation and has superseded the original PowerShell version. Windows users benefit from packet sniffing capabilities unavailable on other platforms, while Linux and macOS users can still leverage the protocol listeners. The tool compiles for multiple .NET versions including 3.5, 4.6.2, and 6.0, with cross-platform support available through .NET 6.0. On Windows, UDP listeners are configured to use port reuse, allowing them to operate on ports already in use by system services.

The project maintains both the legacy PowerShell implementation and an actively developed C# version. The C# codebase has been rebuilt as the primary version and continues to receive updates. The tool provides detailed configuration through parameters in Program.cs that users should review before compilation. Platform-specific limitations exist: packet sniffing is Windows-only due to raw socket differences, and macOS requires manual route configuration for multicast group participation in certain attacks.