CVE-2021-47958CouchCMS 2.2.1版本中存在一处服务器端请求伪造(SSRF)漏洞。由于系统未对上传的SVG文件进行严格过滤,经过身份验证的攻击者可利用browse.php端点上传包含恶意外部实体引用的SVG文件。一旦文件被处理,攻击者即可利用服务器发起任意HTTP请求,进而探测或访问内部网络服务及资源。该漏洞对内网安全构成威胁。
该漏洞的根源在于CouchCMS对上传至browse.php端点的文件内容解析机制存在缺陷。SVG文件基于XML格式,支持文档类型定义(DTD)。攻击者可以构建一个特制的SVG文件,在其中嵌入恶意的DOCTYPE声明及外部实体引用。当经过身份验证的攻击者上传该文件时,服务器端的XML解析器会解析SVG内容并尝试加载攻击者指定的外部资源(如URL)。由于请求是由服务器端发起的,攻击者可以利用服务器作为跳板,探测内网开放的端口、读取本地文件(视解析器配置而定)或访问受限的内网服务。尽管CVSS评分中未体现机密性影响,但SSRF常作为内网渗透的关键突破口,结合其他攻击链可能导致更严重的数据泄露。