[漏洞复现]冰蝎(Behinder)v4.xBasicInfoWebView0-ClickNTLM凭据窃取漏洞

admin 2026-05-06 05:53:00 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 该文档复现了冰蝎(Behinder)v4.xBasicInfoWebView0-ClickNTLM凭据窃取漏洞,攻击者可通过在服务端返回的HTML中注入恶意资源链接,当客户端连接时自动触发NTLM认证握手,从而窃取Windows凭据的NTLMv2哈希。关键发现包括漏洞影响冰蝎4.1及以下版本、每次连接可捕获12个独立哈希,并提供基于PHP-Xor-Request协议的蜜罐搭建方案与防范建议。 综合评分: 85 文章分类: 漏洞分析,红队,内网渗透,WEB安全,恶意软件


WebView 渲染这些 HTML 时,会自动发起 HTTP 请求加载外部资源。

3.4 NTLM 捕获原理

信标服务器(Beacon Server)对每个 HTTP 请求执行 NTLM 认证握手:

  1. 客户端请求资源 → 服务器返回 401 Unauthorized + WWW-Authenticate: NTLM
  2. 客户端发送 Authorization: NTLM <Type1 消息> (Negotiate)
  3. 服务器返回 401 + WWW-Authenticate: NTLM <Type2 挑战> (含 8 字节随机挑战)
  4. 客户端发送 Authorization: NTLM <Type3 认证> — 包含 域名、用户名、NTLMv2 哈希
  5. 服务器解析 Type3 消息,提取 NTLMv2 哈希,返回正常内容

每个 HTML 资源触发一次 NTLM 握手,投毒 HTML 中包含 11+ 个外部资源,因此每次连接可捕获 11+ 个 NTLMv2 哈希

四、蜜罐代码

师傅们自取

https://github.com/EATMELONSEC/behinder-v4-basicinfo-ntlm-theft.git

4.1 主蜜罐脚本 (honeypot_xor.py)

5.2 冰蝎客户端连接

  1. 打开冰蝎客户端 (Behinder.jar)
  2. 新增 WebShell:
  • URL: http://192.168.1.100:9998/shell.php
  • 密码: rebeyond
  • 脚本类型: PHP
  1. 双击连接 — 无需任何额外操作 六、捕获结果

    6.1 NTLMv2 哈希

    每次连接成功捕获 12 个 NTLMv2 哈希。投毒 HTML 中包含 11 个不同的 HTTP 资源引用,每个资源触发一次独立的 NTLM 握手:

    | 资源 | 触发次数 | | — | — | | <img src="...bc.png"> | 第 1 次 NTLM 握手 | | <link href="...style.css"> | 第 2 次 | | <script src="...script.js"> | 第 3 次 | | <iframe src="...frame.html"> | 第 4 次 | | <object data="...object.dat"> | 第 5 次 | | <embed src="...embed.dat"> | 第 6 次 | | <meta refresh "...redirect"> | 第 7 次 | | @import url("...ntlm.css") | 第 8 次 | | background:url("...bg.png") | 第 9 次 | | <video poster="...poster.jpg"> | 第 10 次 | | <audio source="...track.mp3"> | 第 11 次 |

    为什么每次捕获的哈希都不同?

    每次 HTTP 请求都是独立的 TCP 连接(不同源端口),信标服务器每次都生成不同的 8 字节随机 Server Challenge。NTLMv2 哈希的计算方式为:

   NTProofStr&nbsp;= HMAC-MD5(NTLM_Hash, ServerChallenge + ClientBlob)

Server Challenge 不同 → NTProofStr 不同 → 最终哈希不同。但它们都来自同一个用户(Administrator::EATMELON),随便挑一条拿去 hashcat 破解即可,结果都一样。

捕获的哈希(hashcat 5600 格式:user::domain:server_challenge:NTProofStr:blob):

   # 脱敏后的哈希
   Administrator::EATMELON:a7c21856f3907b2d:45f72c9186e3d527a089bc13f7269041:01010000000000007ce52fb87ac9e10d35fa6c721093db57000000000200120061006200630064006500660067006800690000000000000000000

### 6.2 提取的信息

| 字段 | 值 | | — | — | | 攻击者 IP | 192.168.1.200 | | Windows 用户名 | Administrator | | Windows 域名/主机名 | EATMELON | | User-Agent | JavaFX/8.0 Safari/605.1 | | 语言 | zh-cn | | 哈希格式 | hashcat 5600 (NTLMv2) |

### 6.3 哈希破解

   # 使用 hashcat 破解 NTLMv2 哈希
   hashcat -m 5600 ntlm_captures.log wordlist.txt

   # 或使用 john
   john --format=netntlmv2 ntlm_captures.log --wordlist=wordlist.txt

          成功用hashcat爆破出密码

七、版本对比测试结果

| 测试项 | 冰蝎 4.06 (Java 8) | 冰蝎 4.1 Tools 专版 (Java 19) | | — | — | — | | WebShell 连接 | 成功 | 成功 | | Echo 握手 | 成功 | 成功 | | BasicInfo 请求 | 成功 | 成功 | | 投毒 HTML 注入 | 成功 | 成功 | | WebView 渲染 | 成功 | 成功 | | HTTP 信标触发 | 成功 (12次) | 成功 (多次) | | NTLM 自动协商 | 成功 | 失败 | | NTLMv2 哈希捕获 | 12 个 | 0 个 | | 攻击者 IP 捕获 | 成功 | 成功 |


八、漏洞影响

  1. 攻击者身份暴露

    :即使攻击者使用代理/VPN,蜜罐也能获取其真实 IP 和 Windows 用户名

  2. 凭据泄露

    :NTLMv2 哈希可被离线破解,获取攻击者的 Windows 登录密码

  3. 横向渗透

    :获取的凭据可能用于攻击者内网的其他系统

  4. 零交互

    :攻击者只需双击连接 WebShell,无需任何额外操作

九、修复建议

修复建议参考 s2cr3t师傅提的issues https://github.com/rebeyond/Behinder/issues/313



免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:吃瓜安全 《[漏洞复现] 冰蝎 (Behinder) v4.x BasicInfo WebView 0-Click NTLM 凭据窃取漏洞》

立夏|风暖昼长,夏意初漾 网络安全文章

立夏|风暖昼长,夏意初漾

文章总结: 该文档为信安在线于2026年5月5日发布的立夏节气主题资讯,内容聚焦季节更替与自然现象观察,属于生活文化类信息推送。文档未涉及具体技术细节或安全领域
评论:0   参与:  0