什么是Imacket?

Impacket是用于使用网络协议的Python类的集合。Impacket专注于提供对数据包的低级编程访问,并为某些协议(例如SMB1-3和MSRPC)提供协议实现本身。可以从头开始构造数据包,也可以从原始数据解析数据包,面向对象的API使得使用深层协议层次结构变得简单。该库提供了一组工具,作为在该库的上下文中可以执行哪些操作的示例

有关某些工具的说明,请访问:https://www.secureauth.com/labs/open-source-tools/impacket

有哪些协议?

  • 以太网、Linux“熟透”捕获
  • IP、TCP、UDP、ICMP、IGMP、ARP
  • IPv4和IPv6支持
  • NMB和SMB1、SMB2和SMB3(高级实施)
  • MSRPC版本5,支持不同的传输方式:TCP、SMB/TCP、SMB/NetBIOS和HTTP
  • 纯文本、NTLM和Kerberos身份验证,使用密码/散列/票证/密钥
  • 部分/完全实施以下MSRPC接口:EPM、DTYPES、LSAD、LSAT、NRPC、RRP、SAMR、SRVS、WKST、SCMR、BKRP、DHCPM、EVEN6、MGMT、SASEC、TCH、DCOM、WMI、OXABREF、NSPI、OXNSPI
  • 部分TDS(MSSQL)和LDAP协议实现

受到冲击

设置

快速入门

抓取最新的稳定版本,将其解包并运行python3 -m pip install .(python2 -m pip install .对于Python2.x)。这不容易吗?

正在安装

要安装源文件,请从Imacket分发包的解压缩目录执行以下命令:python3 -m pip install .(python2 -m pip install . 对于Python 2.x)。这会将类安装到默认的Python模块路径中;请注意,您可能需要特殊权限才能在此写入

测试

如果您想运行库测试用例,您主要需要做三件事:

  1. 安装和配置Windows 2012 R2域控制器
    • 确保RemoteRegistry服务已启用并正在运行
  2. 配置dcetest.cfg包含必要信息的文件
  3. 安装TOX(python3 -m pip install tox)

一旦做完了,你就可以跑了tox等待结果。如果一切顺利,所有测试用例都应该通过。您还将拥有位于以下位置的Coverage HTML报告impacket/tests/htlmcov/index.html

Docker支持

打造Impacket的形象:

  docker build -t "impacket:latest" .

使用Impacket的图像:

  docker run -it --rm "impacket:latest"

许可

此软件在Apache软件许可证稍作修改的版本下提供。请参阅随附的LICENSE有关详细信息,请参阅文件

Michael Teo基于Pysmb的SMBv1和NetBIOS支持

免责声明

这个开源计划的精神是帮助安全研究人员和社区加快与实施网络协议和堆栈相关的研究和教育活动

此存储库中的信息用于研究和教育目的,不能用于生产环境和/或作为商业产品的一部分

如果您希望将此代码或部分代码用于自己的用途,我们建议您应用适当的安全开发生命周期和安全编码实践,并根据您的需要生成和跟踪各自的危害指标

联系我们

无论您是想报告bug、发送补丁,还是就此包给出一些建议,请给我们几行信息,地址为oss@secureauth.com

有关安全相关问题,请查看我们的security policy

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。