Ivanti Secure Access(原Pulse Secure)权限提升 Cobalt Strike BOF(CVE-2023-35080)。
Ivanti Secure Access(原 Pulse Secure)权限提升 Cobalt Strike BOF(CVE-2023-35080)。
漏洞利用由 Alex 开发,BOF 由 Tijme 完成。感谢 Northwave Cyber Security 提供支持
这是一个 Cobalt Strike (CS) Beacon 对象文件 (BOF) 和可执行文件,用于利用 Ivanti Secure Access(原 Pulse Secure)VPN 客户端漏洞(CVE-2023-35080)。从低权限用户模式出发,它利用内核驱动程序中的漏洞,用系统进程令牌权限覆盖 beacon 进程令牌权限。该内核驱动程序符号链接的 ACL 定义了 Everyone 可以打开其句柄。导致发现该漏洞的研究已在 RedTreat 2023 和 BSIDES London 2023 上发表(演示文稿)。
该漏洞利用已在 Windows 10 Pro 22H2 10.0.19045 (x64) 上开发。随后修改并在 Windows 11 Pro 23H2 22631 (x64) 上测试通过。其他 Windows 版本可能无法开箱即用。经过测试支持的 Windows 完整列表如下:
首先克隆此仓库。然后审查代码,从源代码编译(需要 MinGW),并在 Cobalt Strike 中或作为独立的 PE 文件使用。
make
重要提示!请按顺序执行以下步骤(从低权限用户模式):
首先,确保易受攻击的驱动程序正在运行。如果未运行,不用担心!您可以从低权限用户模式启动它。驱动程序名称以 jnprTdi_ 开头,位于 HKLM\SYSTEM\CurrentControlSet\Services 下。当 VPN 客户端安装时它一定会被安装,但默认情况下不会运行。
当受害机器上的(低权限)用户连接到启用了 TDI 故障转移选项的(恶意)VPN 服务器时,易受攻击的驱动程序确实会启动。我们可以通过复制该行为轻松地自行启动驱动程序,因为我们已成功入侵系统并在其上运行恶意软件。请按照此指南配置您自己的启用了 TDI 故障转移的恶意设备。
"%programfiles(x86)%\Common Files\Pulse Secure\Integration\pulselauncher.exe" -stop
如果驱动程序正在运行且 VPN 客户端已停止,请使用 Cobalt Strike 脚本管理器加载 PulsePrivEsc.cna 脚本。然后使用以下命令执行漏洞利用。
$ pulse_priv_esc
或者(用于测试目的),您可以直接运行编译后的可执行文件。这将以 SYSTEM 身份生成命令提示符。
$ .\PulsePrivEsc.x64.exe
问题或新功能可通过问题跟踪器报告。请在提交新问题前确保您的问题或功能尚未被其他人报告。
版权所有 (c) 2023 Northwave Cyber Security。保留所有权利。