Anymacro 邮件系统N处SQL注入漏洞

2014-05-17T00:00:00
ID SSV:95508
Type seebug
Reporter Root
Modified 2014-05-17T00:00:00

Description

简要描述:

详细说明:

与: WooYun: Anymacro 邮件系统SQL注入漏洞和任意文件(邮件)删除(无需登录) 重复 乌云已经把它列入到通用型奖励厂商当中了。 0x01 背景 AnyMacro(安宁)成立于1999年,是国内领先的统一消息/移动门户/PushMail产品与应用解决方案提供商。主要客户涵盖国家部委、大型企业以及部分海外客户,客户分布于政府、军工、金融、电信、能源、教育等行业。 AnyMacro在技术创新和关键应用中一直处于行业领先地位,在全球首家提出并实现LAMP架构邮件/消息系统已成为事实的行业标准。AnyMacro 具有统一消息/移动门户/PushMail领域的全线技术与自主知识产权,还是多家国际Linux厂商的OEM邮件/消息产品提供商。 0x02 漏洞分析: 由于该邮件系统部分代码已经加密,并且暂无方法解密,通过黑盒加白盒测试,发现所有页面只要添加了权限验证模块,都会出现SQL注入漏洞(危害非常非常严重),SQL注入漏洞可获取邮件信息,以及邮件用户名和密码。 此SQL注入漏洞产生于COOKIE当中,其中只要ANY_EMAIL=xxxx’ 即可报错注入。。。

[<img src="https://images.seebug.org/upload/201405/171732324be42805372ee843299687be7a6013a4.jpg" alt="HNHZ2M8BI~YVU_51@$PRA1.jpg" width="600" onerror="javascript:errimg(this);">

初步怀疑该问题存在于加密代码当中。。。。 下面分析在其中一处代码当中的SQL注入 在tosms.php中

&lt;?php require_once 'config/config.php'; require_once 'include/template.php'; require_once 'include/func.php'; require_once 'include/right.php'; require_once 'include/dbfunc.php'; require_once 'include/sms_func.php'; require_once 'include/func_login.php'; include_once "include/$AUTH_MODULE"; session_start(); $F_sid = trim($_REQUEST['F_sid']); if(isset($_REQUEST['F_sms_send'])) { //当f_sms_send条件存在时,触发 $email = $_COOKIE['ANY_EMAIL']; //无过滤从cookie中获取 $telstr = trim($_REQUEST['F_tel']); $tmp = explode(":",$telstr); $send_tel = $tmp[0]; $send_pass = ''; $sql = "SELECT id,maildir FROM user WHERE id='".$email."'";//直接传入sql语句当中执行,造成sql注入漏洞 $res = db_query($sql); $row = db_fetch($res); if(!empty($row['id'])) { $smsfile = $row['maildir'].'/sms.config'; if(file_exists($smsfile)) { $fstr = @file($smsfile); $farr = explode(",",trim($fstr[0])); $tel_arr[$farr[0]] = $farr[2]; $send_pass = $tel_arr[$send_tel]; } } $recv_tel = trim($_REQUEST['F_phone']); $sms_msg = trim($_REQUEST['F_msg']);

<img src="https://images.seebug.org/upload/201405/17173355e1cecc6d2df89d5cc2aa2bc71f8f357f.jpg" alt="4}C$5OHXMDB1NZIFK)@ZCU0.jpg" width="600" onerror="javascript:errimg(this);">

抓包丢sqlmap注入,即可注入出所有邮件用户名和密码。。。

[<img src="https://images.seebug.org/upload/201405/17173606cdf9b8bbae69e111eb5b5f54ca2d39ad.jpg" alt="XKSJ7}0WV`2Z9OXKU8SM98.jpg" width="600" onerror="javascript:errimg(this);">

[<img src="https://images.seebug.org/upload/201405/17173712c34e579b9b61945aded86bf37f3bfa2f.jpg" alt="88~M13DGGSMUV3CNO$6)IW.jpg" width="600" onerror="javascript:errimg(this);">

注入出用户名和密码,登录后台。。。

[<img src="https://images.seebug.org/upload/201405/1717375125bfe3b24ebbc44290af494536cc7ad2.jpg" alt="O%1@@FN5I19NI@87FOHC{U.jpg" width="600" onerror="javascript:errimg(this);">

漏洞证明:

[<img src="https://images.seebug.org/upload/201405/17173606cdf9b8bbae69e111eb5b5f54ca2d39ad.jpg" alt="XKSJ7}0WV`2Z9OXKU8SM98.jpg" width="600" onerror="javascript:errimg(this);">

[<img src="https://images.seebug.org/upload/201405/17173712c34e579b9b61945aded86bf37f3bfa2f.jpg" alt="88~M13DGGSMUV3CNO$6)IW.jpg" width="600" onerror="javascript:errimg(this);">