CVE-2025-66645NiceGUI是一个基于Python的现代UI框架,用于快速构建Web用户界面。该框架在3.3.1及以下版本中存在严重的目录遍历漏洞,攻击者可以通过构造特殊的URL路径访问服务器上的任意文件。漏洞存在于App.add_media_files()函数中,该函数在处理文件路径时未正确过滤用户输入的路径遍历序列(如../),导致攻击者可以绕过安全限制读取敏感文件。此漏洞无需任何认证即可被利用,影响范围涵盖所有使用受影响版本NiceGUI部署的应用。攻击者可能利用此漏洞读取服务器配置文件、源代码、密钥凭据、环境变量等敏感信息,进而进行进一步的攻击。
NiceGUI框架的App.add_media_files()函数存在路径遍历漏洞。漏洞根源在于该函数在处理媒体文件路径时,直接将用户提供的路径参数与基础目录拼接,而未对路径中的../等遍历序列进行充分过滤。攻击者可以通过构造类似/../etc/passwd的URL路径,使服务器返回/etc/passwd文件内容。在HTTP请求中,攻击者使用编码或未编码的../序列绕过简单的字符串过滤,实现目录回溯。漏洞影响所有使用add_media_files()注册媒体路由的NiceGUI应用。由于该函数通常用于提供静态文件服务,攻击面较广。修复方案在3.4.0版本中对该函数进行了路径规范化处理,使用os.path.realpath()或等效方法验证最终路径是否在允许的基础目录范围内。