纵有疾风起
人生不言弃

Anymacro 邮件系统N处SQL注入漏洞 – 网站安全 – 自学

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

0x01 背景

AnyMacro(安宁)成立于1999年,是国内领先的统一消息/移动门户/PushMail产品与应用解决方案提供商。主要客户涵盖国家部委、大型企业以及部分海外客户,客户分布于政府、军工、金融、电信、能源、教育等行业。 AnyMacro在技术创新和关键应用中一直处于行业领先地位,在全球首家提出并实现LAMP架构邮件/消息系统已成为事实的行业标准。AnyMacro 具有统一消息/移动门户/PushMail领域的全线技术与自主知识产权,还是多家国际Linux厂商的OEM邮件/消息产品提供商。

0x02 漏洞分析:

由于该邮件系统部分代码已经加密,并且暂无方法解密,通过黑盒加白盒测试,发现所有页面只要添加了权限验证模块,都会出现SQL注入漏洞(危害非常非常严重),SQL注入漏洞可获取邮件信息,以及邮件用户名和密码。

此SQL注入漏洞产生于COOKIE当中,其中只要ANY_EMAIL=xxxx’ 即可报错注入。。。

 Anymacro 邮件系统N处SQL注入漏洞 – 网站安全 – 自学插图

初步怀疑该问题存在于加密代码当中。。。。

下面分析在其中一处代码当中的SQL注入

在tosms.php中

 

<?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']);

抓包丢sqlmap注入,即可注入出所有邮件用户名和密码。。。
Anymacro 邮件系统N处SQL注入漏洞 – 网站安全 – 自学插图1
Anymacro 邮件系统N处SQL注入漏洞 – 网站安全 – 自学插图2

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

 
Anymacro 邮件系统N处SQL注入漏洞 – 网站安全 – 自学插图3

    上一篇: 新浪微博部分App Oauth2漏洞 – 网站安全 – 自学php

    下一篇: 百度图片反射型XSS – 网站安全 – 自学php
未经允许不得转载:起风网 » Anymacro 邮件系统N处SQL注入漏洞 – 网站安全 – 自学
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录