近日,网络中流传一种针对腾讯QQ即时聊天软件的攻击手段,它通过向QQ好友发送一条特殊内容的消息,就能够导致消息接收者的QQ崩溃(参看《恶意代码克死QQ的解决之道》 )。有人认为这是腾讯QQ存在安全漏洞,但实际上这是因为刚刚被公布的Windows系统中存在一个DLL缓冲区溢出漏洞,使得腾讯QQ成为该系统漏洞的受害者。该漏洞是因为Windows的riched20.dll在处理RTF(富文本格式)代码,画出图形字符串格式(比如字符大小)的时候,存在缓冲区溢出漏洞,从而导致调用了该dll文件的应用程序崩溃。虽然这是一个可远程利用的缓冲区溢出漏洞,但是,要通过该漏洞执行代码或者命令还是非常困难的。
微软公司目前还没有发布相应的补丁,目前为用户提供下面的临时解决办法:使用旧版本的riched20.dll(Richedit版本4.0)文件,复制到QQ的安装目录下,覆盖原来存在的该文件,并建议覆盖前将旧文件重新命名备份。