CVE-2025-68463CVE-2025-68463是Biopython库中Bio.Entrez模块存在的XML外部实体(XXE)注入漏洞。该漏洞存在于Bio.Entrez功能中,由于不正确地处理XML文档的doctype声明,攻击者可以通过构造恶意的XML输入来触发XXE攻击。Bio.Entrez是Biopython用于与NCBI(美国国家生物技术信息中心)数据库进行交互的模块,广泛应用于生物信息学领域的序列分析、文献检索等场景。攻击者利用此漏洞可以读取本地文件系统内容、进行服务端请求伪造(SSRF)或导致拒绝服务。CVSS评分为4.9(中危),攻击复杂度低,无需特殊权限即可利用,对机密性有低影响,对可用性有低影响。由于该漏洞影响Biopython 1.86及之前版本,使用Bio.Entrez功能进行NCBI数据库查询的用户都可能受到影响。
Bio.Entrez模块在解析NCBI返回的XML响应时,未对doctype声明进行安全过滤或禁用外部实体引用。当Bio.Entrez处理包含恶意doctype定义的XML文档时,解析器会尝试加载攻击者指定的外部实体。攻击者可以通过以下方式利用:1) 构造包含<!DOCTYPE foo [<!ENTITY xxe SYSTEM 'file:///etc/passwd'>]>的恶意XML;2) 诱导用户使用Bio.Entrez模块查询特制的NCBI数据源;3) 利用外部实体引用读取本地文件或发起内部网络请求。漏洞根源在于Biopython使用xml.etree.ElementTree或类似XML解析器时,未设置禁用外部实体的安全选项(如set_disallowed_chars()或禁用外部实体)。修复方案是在XML解析时显式禁用外部实体引用,或使用安全的XML解析配置。