针对“Citrix Bleed”漏洞发布了概念验证 (PoC) 漏洞(编号为 CVE-2023-4966),该漏洞允许攻击者从易受攻击的 Citrix NetScaler ADC 和 NetScaler Gateway 设备检索身份验证会话 cookie。
CVE-2023-4966 是一个严重程度极高、可远程利用的信息泄露漏洞,Citrix 已于 10 月 10 日修复 ,但未提供太多详细信息。
10 月 17 日,Mandiant 透露,自 2023 年 8 月下旬以来,该缺陷 在有限的攻击中被作为零日漏洞滥用 。
本周一,Citrix 向 NetScaler ADC 和 Gateway 设备的管理员发出了后续警告,敦促他们立即修补该漏洞,因为利用率已开始上升。
今天,Assetnote 的研究人员分享了有关 CVE-2023-4966 漏洞利用方法的更多详细信息,并 在 GitHub 上发布了 PoC 漏洞利用程序 ,以展示他们的发现并帮助那些想要测试暴露情况的人。
Citrix Bleed 缺陷
CVE-2023-4966 Citrix Bleed 缺陷是一个未经身份验证的缓冲区相关漏洞,影响 Citrix NetScaler ADC 和 NetScaler Gateway、用于负载平衡、防火墙实施、流量管理、VPN 和用户身份验证的网络设备。
通过分析NetScaler未打补丁的版本(13.1-48.47)和打补丁的版本(13.1-49.15),Assetnote发现了50个功能变化。
在这些函数中,研究人员发现两个函数(“ns_aaa_oauth_send_openid_config”和“ns_aaa_oauthrp_send_openid_config”)在生成响应之前进行了额外的边界检查。
这些函数使用“snprintf”将适当的数据插入到为 OpenID 配置生成的 JSON 有效负载中。在补丁前版本中,响应会立即发送,无需检查。
该漏洞源自 snprintf 函数的返回值,如果被利用,可能会导致缓冲区过度读取。
修补后的版本确保仅当 snprintf 返回低于 0x20000 的值时才会发送响应。
抢夺会话令牌
有了这些知识,Assetnote 的分析师尝试利用易受攻击的 NetScaler 端点。
在此过程中,他们发现用于生成有效负载的主机名值来自 HTTP 主机标头,因此不需要管理员权限即可访问它。
此外,主机名被插入到有效负载中六次。因此,它的利用可能会超出缓冲区限制,迫使端点以缓冲区的内容和相邻内存进行响应。
Assetnote 在报告中解释说:“我们可以清楚地看到 JSON 有效负载后立即出现大量内存泄漏 。 ”
“虽然其中很多都是空字节,但响应中还是有一些看起来可疑的信息。”
响应泄露敏感信息 (Assetnote)
文章原文链接:https://www.anquanke.com/post/id/291013