关键漏洞信息 漏洞标题 FeehiCMS version 2.1.1 - Remote Code Execution via Unrestricted File Upload in Ad Management 漏洞编号 #78 漏洞严重性 Critical CVSS评分 9.6 漏洞描述 FeehiCMS version 2.1.1 允许经过身份验证的远程攻击者上传文件,而这些文件可以在没有充分验证、清理或执行限制的情况下被服务器稍后执行(或存储在可执行的位置)。经过身份验证的远程攻击者可以上传一个特制的 PHP 文件并导致应用程序或 Web 服务器执行它,从而导致远程代码执行 (RCE)。 影响 成功的利用允许经过身份验证的远程攻击者在远程服务器上运行任意系统代码。 证明概念 (POC) 1. 以管理员用户身份登录并导航到广告管理。 2. 上传一个 JPEG 文件并拦截请求。 3. 修改文件扩展名,将 更改为 。 4. 修改文件内容为 。 5. 在后端服务器上,观察上传的文件路径。 6. 在浏览器中打开路径并运行系统命令。 修复建议 1. 严格允许文件类型的白名单。只接受特定的、必要的文件类型(例如 ),并拒绝其他所有类型。通过文件签名(魔术字节)而不是扩展名或客户端 MIME 类型来验证。 2. 存储在 Webroot 之外和非可执行存储中。将上传的文件持久保存到不被 Web 服务器提供或执行的位置。确保上传目录挂载了 (如果支持),设置文件权限禁止执行。 3. 服务器端内容验证和清理。检查文件内容以查找嵌入代码或脚本标签。执行内容扫描(静态和防病毒)。标准化和清理文件名;生成服务器端名称(例如,UUID)以避免控制字符或路径遍历。