CVE-2026-39847Emmett是一个全栈Python Web框架。在2.5.0至2.8.1之前的版本中,其RSGI静态处理程序在处理内部资产路径(/__emmett__/)时存在路径遍历安全漏洞。由于缺乏足够的路径校验,远程攻击者无需经过身份验证,即可利用../序列构造恶意请求(如/__emmett__/../rsgi/handlers.py),从而绕过目录限制,读取服务器上任意文件。该漏洞可能导致敏感信息泄露,严重威胁系统机密性,建议管理员立即采取修复措施。
该漏洞源于Emmett框架在处理RSGI静态文件请求时的逻辑缺陷。具体来说,当服务器接收到针对/__emmett__/路径的请求时,旨在提供框架内置的静态资源。然而,在受影响版本中,代码未对用户提交的路径参数进行严格的标准化处理或目录边界检查。攻击者可以通过在URL中插入路径遍历序列(如../),导致文件解析逻辑跳出预定的静态资源目录。这种攻击方式无需用户交互且无需特殊权限。成功利用后,攻击者能够读取Web服务器进程有权限访问的任意文件,包括应用程序源代码、配置文件或系统敏感文件。