github.com/n00py/Slackor@v0.0.0-20200610224921-d007fcea1740/impacket/README.md (about) 1 What is Impacket? 2 ================= 3 4 Impacket is a collection of Python classes for working with network 5 protocols. Impacket is focused on providing low-level 6 programmatic access to the packets and for some protocols (e.g. 7 SMB1-3 and MSRPC) the protocol implementation itself. 8 Packets can be constructed from scratch, as well as parsed from 9 raw data, and the object oriented API makes it simple to work with 10 deep hierarchies of protocols. The library provides a set of tools 11 as examples of what can be done within the context of this library. 12 13 A description of some of the tools can be found at: 14 https://www.secureauth.com/labs/open-source-tools/impacket 15 16 What protocols are featured? 17 ---------------------------- 18 19 * Ethernet, Linux "Cooked" capture. 20 * IP, TCP, UDP, ICMP, IGMP, ARP. 21 * IPv4 and IPv6 Support. 22 * NMB and SMB1, SMB2 and SMB3 (high-level implementations). 23 * MSRPC version 5, over different transports: TCP, SMB/TCP, SMB/NetBIOS and HTTP. 24 * Plain, NTLM and Kerberos authentications, using password/hashes/tickets/keys. 25 * Portions/full implementation of the following MSRPC interfaces: EPM, DTYPES, LSAD, LSAT, NRPC, RRP, SAMR, SRVS, WKST, SCMR, BKRP, DHCPM, EVEN6, MGMT, SASEC, TSCH, DCOM, WMI. 26 * Portions of TDS (MSSQL) and LDAP protocol implementations. 27 28 29 Getting Impacket 30 ================ 31 32 * [Current and past releases](https://github.com/SecureAuthCorp/impacket/releases) 33 * [Trunk](https://github.com/SecureAuthCorp/impacket) 34 35 Setup 36 ===== 37 38 Quick start 39 ----------- 40 41 Grab the latest stable release, unpack it and run `pip install .` from the directory where you placed it. Isn't that easy? 42 43 44 Requirements 45 ============ 46 47 * A Python interpreter. Python 2.6/2.7 and Python 3.6 are known to work. 48 1. If you want to run the examples and you have Python < 2.7, you 49 will need to install the `argparse` package for them to work. 50 2. For Kerberos support you will need `pyasn1` package 51 3. For cryptographic operations you will need `pycryptodomex` package 52 4. For some examples you will need `pyOpenSSL` (rdp_check.py) and ldap3 (ntlmrelayx.py) 53 5. For ntlmrelayx.py you will also need `ldapdomaindump`, `flask` and `ldap3` 54 6. If you're under Windows, you will need `pyReadline` 55 * A recent release of Impacket. 56 57 Installing 58 ---------- 59 60 In order to install the source execute the following command from the 61 directory where the Impacket's distribution has been unpacked: `pip install .` 62 This will install the classes into the default 63 Python modules path; note that you might need special permissions to 64 write there. For more information on what commands and options are 65 available from setup.py, run `python setup.py --help-commands`. 66 67 Testing 68 ------- 69 70 If you want to run the library test cases you need to do mainly three things: 71 72 1. Install and configure a Windows 2012 R2 Domain Controller. 73 * Be sure the RemoteRegistry service is enabled and running. 74 2. Configure the [dcetest.cfg](https://github.com/SecureAuthCorp/impacket/blob/impacket_0_9_19/tests/SMB_RPC/dcetests.cfg) file with the necessary information 75 3. Install tox (`pip install tox`) 76 77 Once that's done, you can run `tox` and wait for the results. If all goes well, all test cases should pass. 78 You will also have a coverage HTML report located at `impacket/tests/htlmcov/index.html` 79 80 Licensing 81 ========= 82 83 This software is provided under under a slightly modified version of 84 the Apache Software License. See the accompanying LICENSE file for 85 more information. 86 87 SMBv1 and NetBIOS support based on Pysmb by Michael Teo. 88 89 90 Contact Us 91 ========== 92 93 Whether you want to report a bug, send a patch or give some 94 suggestions on this package, drop us a few lines at 95 oss@secureauth.com.