CVE-2025-58173FreshRSS是一款自托管的RSS订阅聚合器。在1.23.0至1.27.0版本中,存在一个严重的路径遍历漏洞,攻击者可以通过在`language`用户配置参数中注入路径遍历序列,绕过安全限制调用`install.php`文件。这使得未授权的普通用户能够执行多种高危管理操作,包括:以管理员身份登录系统、创建新的管理员账户、或将数据库连接指向攻击者控制的MySQL服务器。攻击者进一步利用恶意`curl_params`在feed表中实现远程代码执行。CVSS评分8.8,属于高危漏洞。该漏洞由GitHub安全团队发现并报告,1.27.1版本已修复此问题。
漏洞根源在于FreshRSS对用户配置的`language`参数缺乏有效的路径安全校验。攻击者利用`../`路径遍历序列,可以跳出正常目录访问`install.php`文件。`install.php`原本仅在首次安装时运行,但通过路径遍历可直接调用。攻击流程:首先注册低权限账户,然后修改language参数为类似`../../../pocs/../../app/install.php`的路径。成功调用install.php后,攻击者可在安装界面执行数据库重配置,将数据库指向攻击者控制的MySQL服务器。由于MySQL允许用户自定义函数,攻击者可在feed表的curl_params字段注入恶意配置,结合MySQL UDF实现系统命令执行。此外,也可通过创建新管理员账户直接接管后台,进而在RSS feed更新时触发恶意代码执行。