CVE-2026-42313pyLoad在0.5.0b3.dev100之前的版本中存在权限提升漏洞。由于`set_config_value` API的防护白名单遗漏了代理的关键配置项,拥有SETTINGS权限的非管理员用户可以修改代理设置,将所有出站流量劫持到攻击者控制的服务器,导致数据泄露或中间人攻击。
漏洞位于`src/pyload/core/api/__init__.py`的`set_config_value`方法中。该方法依赖手动维护的`ADMIN_ONLY_CORE_OPTIONS`白名单来限制对敏感选项的修改。虽然白名单包含`proxy.username`和`proxy.password`以保护凭证,但遗漏了`proxy.enabled`、`proxy.host`、`proxy.port`和`proxy.type`。攻击者只需具备`SETTINGS`权限(无需管理员权限),即可通过API调用修改这些被遗漏的选项,启用并指向恶意代理。这使得pyLoad的所有出站HTTP请求(包括下载、验证码获取、更新检查和插件调用)都被透明地重定向,攻击者可拦截敏感数据或篡改服务器响应。