“
隐藏22年
安全专家Andreas Kellas详细介绍了2000年10月推出的SQLite数据库中的一个高严重性漏洞,被追踪为CVE-2022-35737(CVSS评分:7.5)。
CVE-2022-35737漏洞源自整数溢出问题,影响到SQLite 1.0.12 - 3.39.1版本。该漏洞目前已在2022年7月21日发布的3.39.2版本中得到解决。此前,如果在C API的字符串参数中使用了数十亿字节,则有时会允许数组边界溢出。攻击者可以触发这个问题,在受影响的系统上执行任意代码。
CVE-2022-35737在64位系统上可被利用,可利用性取决于程序的编译方式。在没有Stack Canaries的情况下编译库时确认任意代码执行,存在Stack Canaries时未确认,并且在所有情况下都确认拒绝服务。
为了利用CVE-2022-35737漏洞,攻击者必须将大字符串输入传递给printf函数的 SQLite 实现,并且格式字符串包含 %Q、%q 或 %w 格式替换类型。该漏洞与printf调用的名为“ sqlite3_str_vappendf ”的函数处理字符串格式的方式有关。
当sqlite3_str_vappendf函数收到一个大字符串,并且格式替换类型为%q、%Q或%w时,就会触发有符号的整数溢出。
研究人员还发现,如果启用 unicode 字符扫描的特殊字符,那么在最坏的情况下有可能实现任意代码执行,或者导致 DoSS。
最后,安全专家Andreas Kellas总结说道:"这是一个在编写时可能并不像错误的错误”。因为追溯到2000年的SQLite源代码,当时系统主要是32位架构"。
参考:
https://securityaffairs.co/wordpress/137629/hacking/cve-2022-35737-sqlite-bug.html
长风实验室发布、转载的文章中所涉及的技术、思路和工具,仅供以网络安全为目的的学习交流使用,不得用作它途。部分文章来源于网络,如有侵权请联系删除。
考试资讯
工信部教育考试中心
信息技术水平考试即将开始!
权威机构发证,证书官网可查!
11.11截止报名,下半年仅此一次机会!
抓紧时间扫码报名!赶上最后一班车!
推荐
阅读
点赞在看
扫码关注|更多好玩
长风实验室 ·
原文始发于微信公众号(长风实验室):CVE-2022-35737 | 一个隐藏SQLite数据库长达22年的漏洞
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论