关键词
SQLite数据库
SQLite数据库中已披露了一个高严重性漏洞,该漏洞是2000年10月代码更改的一部分,可能使攻击者崩溃或控制程序。
该漏洞被追踪为CVE-2022-35737(CVSS评分:7.5),已有22年历史,会影响SQLite版本1.0.12至3.39.1,并在2022年7月21日发布的版本3.39.2中得到解决。
“CVE-2022-35737在64位系统上是可利用的,可利用性取决于程序的编译方式。”Trail of Bits研究人员Andreas Kellas在今天发表的一篇技术文章中表示。
当编译库时没有堆栈金丝雀时,任意代码执行是确认的,但是当堆栈金丝雀存在时,任意代码执行是未确认的,并且在所有情况下都确认拒绝服务。
SQLite是用C语言编程,使用最广泛的数据库引擎,默认情况下包含Android、iOS、Windows和macOS,以及流行的web浏览器,如谷歌Chrome、Mozilla Firefox和Apple Safari。
Trail of Bits发现的漏洞涉及一个整数溢出漏洞,当超大字符串输入作为参数传递给printf函数的SQLite实现时,就会出现该漏洞,而PRINTF函数又会使用另一个函数来处理字符串格式化(“sqlite3_str_vappendf”)。
然而,漏洞库成功武器化的前提是字符串包含%Q、%Q或%w格式替换类型,当用户控制的数据写入超出堆栈分配缓冲区的边界时,可能会导致程序崩溃。
Kellas解释道:“如果格式字符串包含’!’特殊字符以启用unicode字符扫描,那么在最坏的情况下就有可能实现任意代码执行,或者导致程序无限期地挂起和循环。”
该漏洞也是几十年前被认为不切实际的一个例子——分配1GB字符串作为输入——随着64位计算系统的出现而变得可行。
Kellas说:“当系统主要是32位体系结构时,这个bug在编写时(可以追溯到SQLite源代码中的2000年)可能看起来并不是一个错误。”
来源:HackerNews.cc
END
阅读推荐
安全圈
←扫码关注我们
网罗圈内热点 专注网络安全
实时资讯一手掌握!
好看你就分享 有用就点个赞
支持「安全圈」就点个三连吧!
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...