安全研究人员透露,可以修改sqlite数据库,使其在依赖它们存储数据的其他应用程序中执行恶意代码。
在近日拉斯维加斯def con安全会议上发布的演示中,check point安全研究员omer gull展示了一个受污染的sqlite数据库的演示,该数据库劫持了恶意软件操作的命令和控制服务器,以及使用sqlite在ios设备上实现持久性的恶意软件。
聪明的sqlite攻击让黑客获得ios持久性
我们的想法是,第三方应用程序从sqlite数据库读取数据的漏洞,允许将恶意代码隐藏在sqlite数据库的数据中。
当第三方应用程序(如imessage)读取受污染的sqlite数据库时,它也会无意中执行隐藏代码。
在他在def con上展示的imessage演示中,gull展示了设法替换或编辑“addressbook.sqlitedb”文件的恶意软件或如何在iphone的地址簿中插入恶意代码。
当imessage查询此sqlite文件(imessage定期执行)时,恶意代码会运行,并允许恶意软件在设备上获得启动持久性。
虽然这种情况似乎难以置信,但这并不像看起来那么难。gull说apple没有签署sqlite数据文件,所以替换这个文件是微不足道的。因此,威胁行为者有一种简单的方法可以用来在iphone和macos设备上获得启动持久性。
就其本身而言,apple在5月份针对sqlite攻击媒介发布了修复程序(cve-2019-8600,cve-2019-8598,cve-2019-8602,cve-2019-8577),使用macos mojave 10.14.5,ios 12.3,tvos 12.3和watchos 5.2.1。延迟更新设备的用户仍然容易受到此攻击。
sqlite漏洞可用于劫持恶意软件操作
但是在其他情况下,这些漏洞可以用于“好”。这些案件是针对恶意软件的。
例如,浏览器将用户数据和密码存储在sqlite数据库中。信息窃取程序 - 一类恶意软件 - 专门用于窃取这些sqlite用户数据文件并将文件上载到远程命令和控制(c&c)服务器。
这些c&c服务器通常用php编码,通过解析sqlite文件来提取用户的浏览器数据,以便在恶意软件的基于web的控制面板中显示它。
gull表示,就像imessage攻击一样,sqlite漏洞可用于在恶意软件的c&c服务器上执行代码并接管骗子的系统。
“考虑到几乎任何平台几乎都内置了sqlite,我们认为当涉及到它的开发潜力时,我们几乎没有触及冰山一角,”gull说。
依赖于sqlite的应用程序包括skype,任何网络浏览器,任何android设备,任何itunes实例,dropbox同步客户端,汽车多媒体系统,电视机和机顶盒有线电视盒以及其他一些应用程序。
“我们希望安全社区能够利用这一创新研究和发布的工具,进一步推动它。”
试用申请