思科Talos的研究人员在SQLite中发现了一个use-after-free()
的漏洞,攻击者可利用该漏洞在受影响设备上远程执行代码。
攻击者可以通过向受影响的SQLite安装发送恶意SQL命令来触发此漏洞。
“Sqlite3 3.26.0的窗口函数(Window_Function)中存在可利用的use_after_free漏洞。特制的SQL命令可能导致use_after_free漏洞,可能导致远程代码执行。“阅读Cisco Talos发布的分析。“攻击者可以发送恶意SQL命令来触发此漏洞。”
该漏洞被跟踪为CVE-2019-5018,影响SQLite 3.26.0、3.27.0版本,并获得CVSS 3.0评分8.1。
SQLite是一个C语言库,它实现了一个小型,快速,自包含,高可靠性,功能齐全的SQL数据库引擎。SQLite被认为是世界上使用最多的数据库引擎,它内置于移动电话和大多数计算机中,并用于无数其他应用程序。
SQLite实现了SQL的窗口函数特性,在解析包含窗口函数的SELECT语句之后,使用sqlite3WindowRewrite函数转换SELECT语句。
专家发现SQLite实现的处理函数的过程包括重用已删除的分区。
“回顾原始的sqlite3WindowRewrite函数,这个删除的分区在重写表达式列表之后被重用”,继续分析。
“删除该分区后,它将在exprListAppendList [5]中重用,导致use_after_free漏洞,从而导致拒绝服务。如果攻击者可以在释放内存后控制这些内存,则有可能破坏更多数据,从而可能导致代码执行。“
Talos发布了SQLite版本3.28发布的漏洞的技术细节。
该漏洞的时间表是:
2019-02-05 - 供应商披露
2019-03-07 - 与供应商进行30天跟进; 等待批准
2019-03-28 - 供应商修补
2019-05-09 - 公开发布
本文由白帽汇整理并翻译,不代表白帽汇任何观点和立场
来源:Cisco Talos在SQLite中发现了一个远程代码执行漏洞
原文:Experts found a remote-code execution flaw in SQLite
白帽汇从事信息安全,专注于安全大数据、企业威胁情报。
公司产品:FOFA-网络空间安全搜索引擎、FOEYE-网络空间检索系统、NOSEC-安全讯息平台。
为您提供:网络空间测绘、企业资产收集、企业威胁情报、应急响应服务。