Avast/ AVG漏洞影响数百万设备

2022-5-14 11:45:0 Author: www.4hou.com 阅读量:15 收藏

Avast/ AVG漏洞影响数百万设备。

Avast和AVG是两款广泛使用的安全产品,这些安全产品在Windows设备中以最高权限的特权服务的形式运行。SentinelLabs研究人员在Avast和AVG产品中发现2个存在数十年的高危安全漏洞,影响数百万用户。漏洞CVE编号为CVE-2022-26522 和CVE-2022-26523,攻击者利用这两个漏洞可以实现权限提升、禁用安全产品、覆写系统组件、破坏操作系统、执行恶意操作。因为这两个漏洞非常相似,因此本文主要分析CVE-2022-26522漏洞技术细节。

漏洞分析

CVE-2022-26522

该漏洞位于kernel驱动aswArPot.sys的socket连接处理器中。

如上图所示,该函数首先将当前线程附加到目标进程中,然后使用nt!PsGetProcessPeb获取当前进程PEB的指针。然后取回PPEB->ProcessParameters->CommandLine.Length来分配新缓存。然后复制PPEB->ProcessParameters->CommandLine.Buffer处用户提供的缓存,缓存大小为PPEB->ProcessParameters->CommandLine.Length。

此时,攻击者可以利用kernel线程的竞争条件来修改Length变量。

Looper线程:

PTEB tebPtr = reinterpret_cast(__readgsqword(reinterpret_cast(&static_cast< NT_TIB* >(nullptr)->Self)));
    PPEB pebPtr = tebPtr->ProcessEnvironmentBlock;
 
    pebPtr->ProcessParameters->CommandLine.Length = 2;
  
    while (1) {
        pebPtr->ProcessParameters->CommandLine.Length ^= 20000;
    }

如上所述,代码会获取PEB结构的指针,然后处理进程命令行结构中的length域。该漏洞可以通过初始化socket连接来触发,具体如下:

image.png

整个流程如下所示:

微信图片_20220513150646.png

漏洞触发后,用户可以看到来自操作系统的告警:

CVE-2022-26523漏洞

该漏洞与CVE-2022-26522类似,位于aswArPot+0xbb94中。该函数会从用户控制的指针中两次取回length域。该漏洞可以通过图像加载回调等多种方式触发。

漏洞影响

漏洞可以从沙箱触发,漏洞利用可以实现本地权限提升。比如,该漏洞利用可以作为第二阶段浏览器攻击或执行沙箱逃逸。攻击者利用该漏洞还可以在kernel模式下执行代码,完全控制整个设备。攻击者还可以利用该漏洞绕过安全产品。

漏洞修复

SentinelLabs早在2021年12月就发现了该漏洞,Avast于2022年2月在v22.1版本中修复了该漏洞。

本文翻译自:https://www.sentinelone.com/labs/vulnerabilities-in-avast-and-avg-put-millions-at-risk/如若转载,请注明原文地址