Microsoft .NET Framework是一个流行的软件开发工具包。
Microsoft .NET Framework SDK的ildasm在反汇编DLL文件时存在堆溢出漏洞,导致在反汇编特制的DLL时可能出现拒绝服务。
出现异常的部分如下:
pvReturn = HeapAlloc(_crtheap, HEAP_ZERO_MEMORY, size);
if (pvReturn == NULL)
cmp dword ptr [pvReturn],ebx
jne $L19640+1 (7C3423B6h)
pvReturn = HeapAlloc(_crtheap, HEAP_ZERO_MEMORY, size);
push esi
push 8
push dword ptr [__crtheap (7C38C944h)]
call dword ptr [__imp__HeapAlloc@12 (7C37A07Ch)]
mov dword ptr [pvReturn],eax <-- The Exception Occurs Here
此外,如果*.il文件包含有对+/-64k大小函数的调用的话,ILASM中也会出现溢出。例如:
调用AAAAAAAAAAAAAAAAAAA .... (+/- 64k) AAAAA();
或
调用void [System.Windows.Forms]System.Windows.Forms.Form::AAAAAAAAAAAAAAAAAAA .... (+/- 64k) AAAAA();
攻击者可以利用这些漏洞导致拒绝服务,或可能执行任意指令。
Microsoft .NET Framework SDK 1.1
Microsoft .NET Framework SDK 1.0 SP2
Microsoft .NET Framework SDK 1.0 SP1
Microsoft .NET Framework SDK 1.0 SP1
Microsoft .NET Framework SDK 1.0
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.microsoft.com/technet/security/
暂无评论