首页 网络安全 正文
  • 本文约1035字,阅读需5分钟
  • 2
  • 0

ADOdb SQLite3驱动高危漏洞CVE-2025-54119

摘要

栋科技漏洞库关注到ADOdb SQLite3驱动中存在一个可导致SQL注入攻击的漏洞,该漏洞被追踪为CVE-2025-54119,CVSS 3.1评分10.0。

ADODB(Active Data Objects Data Base)是种数据库抽象层组件,最初为PHP设计,后扩展至多语言,旨在解决不同数据库API不兼容。

ADODB通过封装MySQL、PostgreSQL、Oracle等20余种数据库的差异,提供统一编程接口,降低代码因数据库切换而产生的调整成本。

一、基本情况

ADOdb是一个PHP数据库类库,提供了执行查询和管理数据库的抽象,产品被嵌入到无数PHP项目中,用于简化数据库查询和后端逻辑。

ADODB是Web系统PHP存取数据库的中间函式组件,被应用于入侵检测系统BASE、Snort等场景,通过解压配置即可集成至LAMP环境。

ADOdb SQLite3驱动高危漏洞CVE-2025-54119

栋科技漏洞库关注到ADOdb SQLite3驱动中存在一个可导致SQL注入攻击的漏洞,该漏洞被追踪为CVE-2025-54119,CVSS 3.1评分10.0。

二、漏洞分析

CVE-2025-54119漏洞是ADOdb SQLite3受影响版本的驱动中存在的可能导致SQL注入攻击的漏洞,影响5.22.10之前版本的SQLite3驱动。

漏洞源于对查询参数未进行适当的转义处理,当使用ADOdb连接到sqlite3数据库并使用精心设计的表名调用时可能被执行任意SQL语句。

可导致查询参数未进行适当的转义处理的方法中表名参数如下:

metaColumns()
metaForeignKeys()
metaIndexes()

当不受信任的用户输入作为$table参数传递给上述这些函数时,攻击者就可以利用这一漏洞在数据库中注入并执行任意SQL语句。

尽管上述这些方法通常只用于模式自省(如检索列元数据或外键关系),但不当的验证仍旧可能为攻击者操纵后端SQL查询开启一个通道。

即便是没有直接数据操纵端点的情况下,官方指出所述严重程度对应最坏使用场景,如允许用户提供的数据未经处理直接传递给上述方法。

ADOdb官方已在5.22.10版本中通过提交5b8bd52修复该漏洞,强烈建议所有使用ADOdb SQLite3驱动的开发者立即升级修复该高危漏洞。

如果暂时无法立即升级,可以通过仅向metaColumns()、metaForeignKeys()和metaIndexes()方法的$table参数传递受控数据来临时缓解。

临时缓解措施的做法只不过是严格清理和控制传入漏洞方法的$table参数,但需注意,仅依赖手动验证并非万全之策,官方强烈建议升级。

三、影响范围

ADOdb < 5.22.10

四、修复建议

ADOdb >= 5.22.10

五、参考链接

管理员已设置登录后刷新可查看



扫描二维码,在手机上阅读
评论
更换验证码
友情链接