漏洞关键信息 漏洞描述 AI Feeds WordPress 插件 1.0.11 及以下版本存在未认证的远程代码执行漏洞,位于 文件中。该文件无需任何认证或授权检查即可通过 HTTP 直接访问,允许未认证的攻击者下载任意 GitHub 仓库并覆盖插件文件,导致远程代码执行。 漏洞详细分析 1. 直接文件访问 问题代码行: 1-17 问题: 缺少 WordPress 标准的 检查,允许直接通过 HTTP 访问文件。 未验证参数: 从 直接获取参数。 2. 令牌验证 问题代码行: 26 问题: 令牌仅检查是否为空或默认值,未进行任何身份验证或授权检查。 3. GitHub API 请求 问题代码行: 31, 35-38 问题: 使用用户控制的参数从 GitHub API 下载 ZIP 文件,但不验证仓库所有者或内容。 4. ZIP 解压和文件操作 问题代码行: 144-169 问题: 下载的 ZIP 文件被解压并直接复制到插件目录,覆盖现有文件。 5. 文件删除 问题代码行: 164-165 问题: 删除插件目录中未包含在已下载仓库中的文件。 利用方法(Proof of Concept) 示例代码: 提供了一个演示如何利用该漏洞进行远程文件上传和执行的 PoC。 潜在风险: 攻击者可以控制插件目录中的文件,从而执行任意代码。 小结 该漏洞允许未认证的远程攻击者通过直接访问 文件来下载和覆盖插件文件,进而导致远程代码执行。建议尽快更新插件至最新版本以修复该漏洞。