SQLite代码执行漏洞:深入解析

发表时间: 2019-08-12 14:12

CheckPoint的研究人员发现,SQLite数据库可能被黑客作为攻击目标,在应用程序中执行恶意代码。研究人员在拉斯维加斯的DEF CON安全会议上介绍了攻击技术。

研究人员研究了如何使用SQL语言在SQLite中造成内存破坏。他们设计了SQL查询劫持和面向查询的编程技术,以触发SQLite引擎中的内存问题。在会议上向观众展示了几个真实攻击场景。

在第一个场景中,攻击了密码窃取程序的C2服务器

在第二个场景中,展示了如何攻击iOS设备,攻击者把掉iPhone通讯录中的“AddressBook.sqlitedb”替换成恶意的文件,当iMessage查询此SQLite文件时,就会触发漏洞执行恶意代码,并且这种漏洞利用在iOS设备上具有持久性。iOS并没有对SQLite的数据库文件进行签名验证,使得这种攻击成为可能。目前iOS上受到影响的相关App中的漏洞已经被标记为了CVE-2019-8600、CVE-2019-8598、CVE-2019-8602和CVE-2019-8577。

SQLite几乎可以在任何平台中使用,研究人员认为关于SQLite的安全研究只是一个开始,并列举了几个可能值得研究的地方:找到更丰富的漏洞利用;实现更为强大的利用点如任意读写;寻找查询器无法验证是否信任数据库的场景。