浏览器是用户访问互联网的主要媒介,同时也成为网络攻击的入口之一,相关0day、1day漏洞被各大APT组织广泛用于各种攻击事件中。该类漏洞一般被攻击者用于获取目标主机低等级的执行权限,为了下一步的沙箱逃逸或权限提升作准备。
CVE-2021-21220
CVE-2021-21220是Pwn2Own 2021大赛上使用的Chrome漏洞,属于V8(Javascript解析引擎)的JIT(just-in-time)模块的漏洞,该漏洞影响范围包括Chrome 89.0.4389.128 之前版本,在今年4月被谷歌修复。
此漏洞存在于JIT的指令选择阶段,补丁代码如下:
CVE-2021-21220漏洞相关代码
在InstructionSelector::VisitChangeInt32ToInt64函数中,通过判断load_rep是无符号还是有符号,有符号进行符号拓展,无符号进行零扩展。再结合异或计算的优化,将异或0的操作优化掉,使得通过判断异或计算前的符号错误的选择了零扩展,最终可以造成数组越界读写。
利用该漏洞可以对未开沙箱的Chrome浏览器造成远程代码执行。
微信Windows客户端3.1.0.41及以下版本调用了Chrome内核,并默认未启用沙箱模式导致受此漏洞影响存在远程代码执行漏洞(CNNVD-202104-1003)。
CVE-2021-21220演示效果
在沙箱环境下,结合CVE-2021-1648等沙箱逃逸漏洞可以形成完整攻击链。
漏洞利用演示
CVE-2021-21224
此漏洞是PuzzleMaker组织[53]攻击中使用的Chrome浏览器0day漏洞,该漏洞通过在野利用的方式捕获,影响范围包括Chrome 90.0.4430.85 之前版本,在今年4月被谷歌修复。
该漏洞存在于Chrome的V8(Javascript解析引擎)的即使编译器中的Simplified-Lowering阶段。结合补丁信息,其具体位置于RepresentationChanger::GetWord32RepresentationFor函数中,补丁代码如下图所示:
CVE-2021-21224漏洞相关代码
通过补丁可知,漏洞成因为代码优化过程中仅判断了output_type为无符号32位数,就在之后插入TruncateInt64ToInt32操作节点,该操作会将传入的数字转化成有符号32位数,因为传入的类型是无符号32位数,所以可能会使用32位有符号数的符号位,这样会造成整数下溢,利用整数溢出可以造成数组越界读写。
利用该漏洞可以对未开沙箱的Chrome浏览器造成远程代码执行;在沙箱环境下,结合内核提权漏洞(如:CVE-2021-31956)可以造成沙箱逃逸,组成完整攻击链。
漏洞利用演示
CVE-2021-30551
此漏洞是Chrome浏览器中的在野0day漏洞,属于V8(Javascript解析引擎)类型混淆漏洞,该漏洞影响范围包括Chrome 91.0.4472.101 之前版本,在今年6月被谷歌修复。
此漏洞是由于DOM中的HTMLEmbedElement对应着HTML的标签,其具有拦截器属性,攻击者可以通过设置自定义拦截器。当设置其属性的时候,如果属性不存在,就会SetPropertyInternal遍历其原型链,在此过程如果遇到拦截器,则会通过WriteToReadOnlyProperty函数调用自定义拦截器的JS代码,代码如下:
CVE-2021-30551漏洞相关代码
如果在自定义的JS代码中新建此属性则会创建一个新的属性描述符,然后利用对象的隐藏类的”deprecated”状态,当自定义的JS代码返回时由于没有找到此属性,就会再次创建此属性,但是只会修改此属性的值,这最终导致类型混淆。
利用该漏洞可以对未开沙箱的Chrome浏览器造成远程代码执行;在沙箱环境下,结合沙箱逃逸漏洞可以形成完整攻击链。
漏洞利用演示
CVE-2021-40444
CVE-2021-40444是微软官方在九月披露的一个存在于Microsoft MSHTML的漏洞,攻击者通过构造特定的Microsoft Office文档可实现远程命令执行进行攻击。该漏洞影响当时Windows 7到Windows 10及Windows Server 2008到Windows Server 2019全版本,微软官方于2021年9月发布补丁修复。
通过对已有样本进行分析,可以发现Microsoft Office文档中包含了一个htmlfile ole对象,点开此文档后会向远程服务器发起请求下载一个cab文件到本地并从cab中提取文件,正常情况下提取出的文件只作为临时文件存放在随机命名的目录下,而利用路径遍历漏洞可以将保存在cab中的恶意文件提取至可确定目录下,此外,通过修改cab文件中特定字段可以绕过提取后删除该文件的操作从而将提取到的恶意文件保存下来。然后攻击者会继续通过.cpl文件执行的方式加载恶意文件,cpl文件本质是一个dll文件,该方法使用control.exe程序运行并最后以rundll32.exe进程加载恶意文件,从而达到远程命令执行的目的。
不同于内存破坏类漏洞,CVE-2021-40444本身为逻辑漏洞,不受Office版本限制,且利用手法相对简单,具有极高的可利用性,目前网络上已存在利用代码甚至武器化项目,该漏洞可能会在未来多年内被恶意利用,需要大家广泛关注与重视。
CVE-2021-40444演示效果
漏洞利用演示
详细内容将在《2021攻击技术发展趋势报告》中介绍,敬请期待~
2021攻击技术发展趋势报告
行业首个攻击技术发展趋势年度报告:
《2021攻击技术发展趋势报告》
将于2月底正式发布!
绿盟科技联合北京航空航天大学、华中科技大学、成都信息工程大学、浙江警察学院一同发布行业首个攻击技术发展趋势年度报告,基于对全年网空威胁攻击技术的跟进研究,甄选年度热点攻击技术和在未来可能大规模使用的新型攻击技术,分为八大重点方向进行研究解读并研判攻击技术发展新趋势。
相关阅读:报告解读|2021年攻击技术八大发展趋势
点击阅读全文即可下载《2021攻击技术发展趋势报告》精华版
绿盟科技天元实验室专注于新型实战化攻防对抗技术研究。
研究目标包括:漏洞利用技术、防御绕过技术、攻击隐匿技术、攻击持久化技术等蓝军技术,以及攻击技战术、攻击框架的研究。涵盖Web安全、终端安全、AD安全、云安全等多个技术领域的攻击技术研究,以及工业互联网、车联网等业务场景的攻击技术研究。通过研究攻击对抗技术,从攻击视角提供识别风险的方法和手段,为威胁对抗提供决策支撑。
M01N Team
聚焦高级攻防对抗热点技术
绿盟科技蓝军技术研究战队
原文始发于微信公众号(M01N Team):年报解读|年度高可利用漏洞——浏览器漏洞