近日,Symantec和Norton产品中使用的核心杀毒引擎被曝存在高危漏洞。它在解析用aspack早期版本打包的可执行文件时会发生缓冲溢出,导致内存损坏,Windows系统蓝屏。其CVE编号为CVE-2016-2208,CNNVD编号为CNNVD-201605-423。
漏洞详情
当程序解析使用aspack早期版本打包的可执行文件时,会触发缓冲区溢出漏洞。该漏洞发生在部分数据截断时,也就是SizeOfRawData值大于SizeOfImage值时。
这是一个远程代码执行漏洞,由于Symantec使用过滤器驱动程序来截取所有系统I/O,因此只需要通过邮件向受害者发送文件或链接就可以利用该漏洞。
在Linux、Mac和UNIX平台上,攻击者可利用该漏洞以root权限在Symantec或Norton进程中导致远程堆溢出。在Windows平台上则会导致内核内存损坏,而由于扫描引擎被加载到内核中,使得该漏洞成为一个ring0内存损坏漏洞。
该漏洞的利用方式是通过邮件或浏览器。testcase.txt文件是一个预先建立的二进制文件,只需要点击下载就可以触发受影响系统的内核崩溃。当该文件下载到磁盘中时,Symantec会分配SizeOfImage字节的空间,并将可用数据从截断部分复制到缓冲区,导致堆或缓冲池损坏。实际上,Symantec会执行下列序列:
char *buf = malloc(SizeOfImage);
memcpy(&buf[DataSection->VirtualAddress],
DataSection->PointerToRawData,
SectionSizeOnDisk);
以上的所有值和数据都是被攻击者控制的,因此会导致彻底的溢出。由于该漏洞存在于核心的扫描引擎中,Symantec的大部分产品都受到影响。
在基于Windows的Symantec终端杀毒软件中,该漏洞运行在ccSvcHost.exe进程中以NT AUTHORITYSYSTEM权限执行代码。在基于Windows的Norton杀毒软件中,该代码会被加载到内核中,导致内核池损坏。
来源:freebuf.com
原文始发于微信公众号(CNNVD安全动态):赛门铁克/诺顿反病毒引擎远程Heap/Pool内存损坏漏洞分析(CNNVD-201605-423)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论