首页 -> 安全研究

安全研究

安全漏洞
Symantec Antivirus远程栈溢出漏洞

发布日期:2006-05-24
更新日期:2006-06-08

受影响系统:
Symantec Client Security 3.1
Symantec Client Security 3.0
Symantec AntiVirus Corporate Edition 10.1
Symantec AntiVirus Corporate Edition 10.0
描述:
BUGTRAQ  ID: 18107
CVE(CAN) ID: CVE-2006-2630

Symantec AntiVirus是非常流行的杀毒解决方案。

Symantec Antivirus远程管理接口中存在远程栈溢出漏洞。受影响产品通讯所使用的远程管理协议是基于消息的私有协议,有两级封装。外层由消息头组成,可能为消息类型10,表示请求Rtvscan.exe,也可能为类型20或30,表示转发SSL协商。如果为TCP连接创建了SSL,则之后的通讯就会加密,尽管私有格式中仍有明文。

类型10消息的数据包含有自己的首部和消息体,均由Rtvscan.exe处理。这个首部中有一个命令字段,指定将要执行的操作和消息体数据的格式。

COM_FORWARD_LOG (0x24)命令处理器没有正确的使用strncat,允许用任意数据覆盖0x180字节的栈缓冲区。如果COM_FORWARD_LOG请求中的第一个字符串包含有反斜线,就会执行以下两个strncat调用之一:

* 如果字符串包含有逗号但没有双引号:

strncat(dest, src, 0x17A - strlen(src));

* 否则:

strncat(dest, src, 0x17C - strlen(src));

如果源字符串的长度分别超过了0x17A或0x17C个字符的话,算术就会下溢,导致很大的内存拷贝大小。这可能允许将这个源字符串附加到缓冲区,用64KB的数据(空字符除外)覆盖栈。

Rtvscan.exe是用Visual Studio /GS安全选项编译的,包含有栈canary检查。但攻击者可以通过很大的覆盖并控制异常处理器注册绕过这个安全措施。

<*来源:eEye (info@eEye.com
        Derek Soeder (dsoeder@eeye.com
  
  链接:http://securityresponse.symantec.com/avcenter/security/Content/2006.05.25.html
        http://www.kb.cert.org/vuls/id/404910
        http://www.eeye.com/html/research/upcoming/20060524.html
        http://www.eeye.com/html/research/advisories/AD20060612.html
*>

建议:
临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* 通过HKEY_LOCAL_MACHINE\SOFTWARE\INTEL\LANDesk\VirusProtect6\CurrentVersion\AgentIPPort注册表值更改管理接口TCP端口。

厂商补丁:

Symantec
--------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://www.symantec.com/techsupp/enterprise/select_product_updates.html

浏览次数:4418
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障