0x01 产品简介
aiohttp是一个用于异步网络编程的Python库,支持客户端和服务器端的网络通信。它利用Python的asyncio库来实现异步IO操作,这意味着它可以处理大量并发网络连接,而不会导致线程阻塞或性能下降。aiohttp常用于需要高性能网络通信的应用程序,如高频交易平台、大规模并发API服务等。
0x02 漏洞概述
aiohttp 存在目录遍历漏洞,攻击者可通过该漏洞读取系统重要文件(如数据库配置文件、系统配置文件)、数据库配置文件等等,导致网站处于极度不安全状态。
利用条件
使用aiohttp实现Web服务;
配置aiohttp中的静态资源解析,使用了不安全的参数follow_symlinks,代码如routes.static("/static", static_dir, follow_symlinks=True)
成功利用该漏洞可读取服务器上任意文件。另外值得一提的是,Github上多个高star开源项目并未正确配置该参数,目前已知受影响的开源项目有:
https://github.com/comfyanonymous/ComfyUI/
https://github.com/ray-project/ray
0x03 影响范围
1.0.5 < version < 3.9.2
0x04 复现环境
FOFA:title=="ComfyUI"