CVE:CVE-2003-0010
CNNVD:CNNVD-200303-065
Microsoft Windows脚本引擎(Script Engine)是Window操作系统解析和执行如VBscript和JScript脚本语言的系统。这些脚本代码可以用于对WEB页增加功能，或者在操作系统或程序中自动执行某些任务，脚本代码可以由Visual Basic Script、JScript或JavaScript编写。
Windows脚本引擎JsArrayFunctionHeapSort函数对外部输入缺少正确检查，远程或者本地攻击者利用这个漏洞提供恶意脚本代码，诱使用户执行，可能以用户进程权限在系统上执行任意指令。
通过传递恶意JavaScript通过IE或Outlook传递给Windows脚本引擎时，会发生基于堆的内存破坏。漏洞存在于由jscript.dll实现的JScript中，下面的恶意代码可以触发溢出：
<script>
    var trigger = [];
    i = 1;
    do {trigger[i] = 1;} while(i++ < 10000);
    trigger[0x3FFFFFFF] = 1;
    trigger.sort(new Function("return 1"));
</script>
内部的JsArrayFunctionHeapSort在对中建立两个数组，一是size 4 * (MaxElementIndex + 1)和另一个size 20 * (MaxElementIndex + 1)，上面的例子中，MaxElementIndex是0x3FFFFFFF，当此值增加和乘4的时候，就会发生整数溢出，精心构建提交数据可能以当前用户进程权限在系统上执行任意指令。
solution:Upgrade microsoft windows_2000 to a higher version than *,*:sp1,*:sp2,*:sp3,and avoid the version *:sp1,*:sp2,*:sp3; Upgrade microsoft windows_2000_terminal_services to a higher version than *,*:sp1,*:sp2,*:sp3,and avoid the version *:sp1,*:sp2,*:sp3; Upgrade microsoft windows_98 to a higher version than *:gold,and avoid the version *:gold; Upgrade microsoft windows_98se to a higher version than *; Upgrade microsoft windows_me to a higher version than *; Upgrade microsoft windows_nt to a higher version than 4.0,4.0:sp1,4.0:sp2,4.0:sp3,4.0:sp4,4.0:sp5,4.0:sp6,4.0:sp6a,and avoid the version 4.0,4.0:sp1,4.0:sp2,4.0:sp3,4.0:sp4,4.0:sp5,4.0:sp6,4.0:sp6a; Upgrade microsoft windows_xp to a higher version than *,*:gold,*:sp1,and avoid the version *:gold,*:sp1