impacket
Network protocols Constructors and Dissectors
Decision gist · record as of 2026-08-14
Yes, if you are doing Windows network protocol work, security research, or protocol analysis. The package is actively maintained, has low install friction, and carries no known vulnerabilities. However, the maintainers explicitly disclaim production use; apply proper security practices if you use it in any real environment. The permissive license poses no barrier to adoption.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires network access to target systems; cryptographic dependencies (pycryptodomex, pyOpenSSL) may require system libraries on some platforms.
- Low install friction with a pure-Python wheel distribution.
- Active maintenance as of 87 days ago.
License · maintenance · safety
Apache modified (permissive) — Licensed under a modified Apache license (permissive treatment), meaning you can use, modify, and distribute the code with minimal restrictions, though you should review the LICENSE file for the specific modifications to the standard Apache terms.
last release 2026-05-19 (87 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 654,488 downloads/mo, #5,523 on PyPI
Alternatives
Verify before relying
pip install impacket
from impacket.smbconnection import SMBConnection
conn = SMBConnection('target_host', 'target_host')- Whether the package is suitable for production use given its disclaimer emphasizing research and educational purposes.
- Current state of Python 3.9+ support compatibility in practice.
- Whether all MSRPC interfaces listed (EPM, DTYPES, LSAD, LSAT, NRPC, RRP, SAMR, SRVS, WKST, SCMR, BKRP, DHCPM, EVEN6, MGMT, SASEC, TSCH, DCOM, WMI, OXABREF, NSPI, OXNSPI) are fully or partially implemented.
What it is and what it does
Impacket is a collection of Python classes for working with network protocols at the packet level. It provides both low-level packet construction and parsing capabilities, as well as high-level protocol implementations for SMB (versions 1–3), MSRPC, LDAP, Kerberos, and related Windows authentication mechanisms. The library lets you build packets from scratch or dissect raw data into structured objects, making it useful for network analysis, protocol testing, and security research.
The package is maintained by Fortra's Core Security and supports Python 3.9 through 3.13. It comes with a set of command-line tools demonstrating practical use cases. The library's primary dependencies are cryptographic (pycryptodomex, pyOpenSSL, pyasn1) and protocol-specific (ldap3, ldapdomaindump, flask for some tools). The project explicitly disclaims production use, positioning itself as a research and educational tool for protocol implementation and security work.
Use it for
- Construct and send SMB protocol messages to interact with Windows file shares and network resources programmatically.
- Implement MSRPC clients to call remote procedures on Windows systems for administrative or security research tasks.
- Parse and analyze network traffic to understand protocol behavior or reverse-engineer protocol implementations.
- Build security testing tools that authenticate using NTLM, Kerberos, or plain credentials over SMB or MSRPC.
- Develop LDAP clients to query Active Directory or other directory services from Python.
- Dissect Ethernet, IP, TCP, UDP, and other low-level packets for network diagnostics or protocol analysis.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are doing Windows network protocol work, security research, or protocol analysis.
The package is actively maintained, has low install friction, and carries no known vulnerabilities. However, the maintainers explicitly disclaim production use; apply proper security practices if you use it in any real environment. The permissive license poses no barrier to adoption.
Install
impacket on PyPI
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance as of 87 days ago. Depends on 10 runtime packages including cryptographic libraries (pycryptodomex, pyOpenSSL) and protocol handlers (ldap3, ldapdomaindump), all of which are standard ecosystem choices.
Requires network access to target systems; cryptographic dependencies (pycryptodomex, pyOpenSSL) may require system libraries on some platforms.
License in practice
Licensed under a modified Apache license (permissive treatment), meaning you can use, modify, and distribute the code with minimal restrictions, though you should review the LICENSE file for the specific modifications to the standard Apache terms.
Quickstart
pip install impacket
from impacket.smbconnection import SMBConnection
conn = SMBConnection('target_host', 'target_host')
Verify before relying
- Whether the package is suitable for production use given its disclaimer emphasizing research and educational purposes.
- Current state of Python 3.9+ support compatibility in practice.
- Whether all MSRPC interfaces listed (EPM, DTYPES, LSAD, LSAT, NRPC, RRP, SAMR, SRVS, WKST, SCMR, BKRP, DHCPM, EVEN6, MGMT, SASEC, TSCH, DCOM, WMI, OXABREF, NSPI, OXNSPI) are fully or partially implemented.
Package facts
| License | Apache modified permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 10 packagespyasn1pyasn1_modulespycryptodomexpyOpenSSLsixldap3ldapdomaindumpflaskcharset_normalizerpyreadline3 |
| Maintenance | Actively maintained 87 days since the last release |
| First released | |
| Downloads | 654,488 / month, #5,523 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9 |
Evidence: impacket-0.13.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “MSRPC client library”
- impacketImpacket provides low-level Python classes for constructing and…
- conjure-python-clientA lightweight HTTP client library built on requests that handles RPC…
- paypalhttpPayPalHttp is a generic HTTP client library designed to work with…
Give your agent the search over MCP, or paste the wish link into any chat.
More Security packages
Provides Python bindings to the FreeDesktop.org Secret Service API for securely storing and retrieving passwords and secrets through GNOME Keyring, KWallet, or KeePassXC.
MSAL for Python handles OAuth2 and OpenID Connect authentication with Microsoft identity services, managing token acquisition, caching, and refresh for applications integrating with Microsoft Entra ID, Microsoft Accounts, and Azure AD B2C.
joserfc implements JOSE standards (JWS, JWE, JWK, JWT, and related RFCs) for signing, encrypting, and managing JSON-based cryptographic tokens in Python.
Authlib provides a complete implementation of OAuth 1.0, OAuth 2.0, and OpenID Connect 1.0 for building both authentication clients and servers, with built-in support for JWS, JWK, JWA, and JWT standards.
Provides low-level CFFI bindings to the official Argon2 password hashing algorithm for use by libraries and applications that need direct access to Argon2 without higher-level abstractions.
ADAL for Python authenticates applications with Azure Active Directory to obtain tokens for accessing Azure AD-protected resources.
Install only if maintaining existing code that already depends on it, and plan a migration.
See also dpkt · smbprotocol · msldap · scapy · pyspnego · pydivert · pmd-net-proto · sspilib · pysmb · bloodhound