CVE-2026-42312pyLoad在0.5.0b3.dev100版本之前存在权限验证绕过漏洞。由于`set_config_value` API未将敏感选项`general.ssl_verify`列入管理员白名单,普通认证用户即可关闭SSL验证。这使得后续所有出站请求禁用TLS校验,攻击者可利用中间人攻击窃取或篡改数据。
该漏洞的根源在于pyLoad核心API实现中的访问控制逻辑缺陷。在`src/pyload/core/api/__init__.py`文件中,`set_config_value()`方法仅要求调用者具备`Perms.SETTINGS`权限,而非管理员权限。为了防止普通用户修改敏感配置,开发者设计了一个名为`ADMIN_ONLY_CORE_OPTIONS`的手动维护白名单。然而,该白名单不完整,遗漏了关键的安全选项`("general", "ssl_verify")`。攻击者利用这一漏洞,只需拥有普通用户的`SETTINGS`权限,即可通过API调用将`general.ssl_verify`设置为`off`。该操作直接修改了应用程序的全局配置,导致后续所有基于`pycurl`库的出站请求都会被强制设置`SSL_VERIFYPEER=0`和`SSL_VERIFYHOST=0`。这意味着TLS证书链验证和主机名验证被完全禁用。此时,位于同一网络路径上的攻击者可以利用中间人攻击(MITM),向pyLoad提供任意伪造的数字证书,从而拦截、解密或篡改所有下载内容,严重危及数据的机密性和完整性。