fortra/impacket

Impacket is a collection of Python classes for working with network protocols.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 9 minutes ago
Added to GitGenius on September 3rd, 2026
Created on April 15th, 2015
Open Issues & Pull Requests: 315 (+0)
GitHub issues: Enabled
Number of forks: 3,956
Total Stargazers: 16,071 (+0)
Total Subscribers: 370 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

Impacket is a collection of Python classes for working with network protocols.

Impacket provides low-level programmatic access to network protocol packets and implements several protocols in full, particularly SMB1-3 and MSRPC. It allows packets to be constructed from scratch or parsed from raw data through an object-oriented API designed to handle deep protocol hierarchies. The library covers a wide range of protocols including Ethernet, IP, TCP, UDP, ICMP, IGMP, ARP, NMB, SMB variants, MSRPC over multiple transports, and partial implementations of TDS and LDAP. Authentication support includes plain, NTLM, and Kerberos methods using passwords, hashes, tickets, or keys. The tool ships with example utilities demonstrating practical applications of the library.

Impacket suits developers and security researchers who need programmatic control over network protocol interactions at a low level. It is particularly valuable for those working with Windows network protocols, SMB operations, and MSRPC interfaces. The library's strength lies in its comprehensive protocol coverage and flexibility in both constructing and parsing packets, making it suitable for security testing, protocol analysis, and network tool development where direct protocol manipulation is required.

The project maintains an active test suite using pytest, tox, and coverage tooling across supported Python versions. Development occurs on a master branch alongside stable releases, with a comprehensive testing guide provided for contributors. The codebase demonstrates sustained maintenance with organized test infrastructure and clear documentation of testing procedures.