YouYaX 后台下的SQl注入漏洞
转载于90SEC 要是原作者在私密我删帖...感谢每一位原创的作者,为我们带来好的学习交流平台!
=========================================================
漏洞文件:/Lib/adminAction.php经过我一步步的跟踪,我终于发现程序员的松懈这这里用的是htmlspecialchars,这个函数其实并不针对sql,除非有特殊情况的时候他的过滤才对sql起到作用,当然我遇到过两次,说起就是泪了。htmlspecialchars 函数主要针对的是< > ' " "等这些符号,而sql中单引号起到了很大的作用,那这个时候我们应该想到转义符,这是一个强大的存在,蓝翔毕业的都知道它。当然转义符可以绕过这个函数,但是有一个sql利用的前提就是语句能够注释掉后面,不解释多,本地环境上
续狗的ID已经上去了,可以看到有注入,那试试注释下
可以看到能注释后面的内容,那么就可以确定存在注入了
备注:因续狗mysql手工注入脑残,一直靠的是sqlmap跟大牛帮忙手工的,所以也就匿了,o(︶︿︶)o 唉 正在狂补手工注入的
因妹子嫌弃本屌是搞安全的,本屌很伤心,所以没继续挖下去,挖到一个后台的洗洗睡了。
别问我后台下的注入能干嘛,我会告诉你 当你搞一个站的时候,主站没希望,刚好有一个旁站 无奈admin admin进去了 拿不下shell,这个时候注入就可能起到了作用了
=========================================================
漏洞文件:/Lib/adminAction.php
public function bid_set() { if($_SESSION['token']!=$_POST['token']){ $this->assign("code", "操作错误!")->assign("msg", "可能处于恶意操作中")->display("Public/exception.html");exit; }else{ $_SESSION['token']=''; } if (empty($_SESSION['youyax_admin'])) { $this->redirect("admin" . C('default_url') . "login" . C('static_url')); } $id = intval($_POST['id']); $arr = $this->find(C('db_prefix') . "user", 'string', "id='" . $id . "'"); if ($_POST['bid_op'] == 1) { mysql_query("update " . C('db_prefix') . "user set bid=bid+" . intval($_POST['bid_text']) . " where id='" . $id . "'"); CommonAction::admin_send($arr['user'], '管理员奖励了你 ' . intval($_POST['bid_text']) . ' 金币,操作原因: '.(empty($_POST['bid_reason'])?'无':htmlspecialchars($_POST["bid_reason"], ENT_QUOTES, "UTF-8"))); } if ($_POST['bid_op'] == 2) { mysql_query("update " . C('db_prefix') . "user set bid=bid-" . intval($_POST['bid_text']) . " where id='" . $id . "'"); CommonAction::admin_send($arr['user'], '管理员处罚了你 ' . intval($_POST['bid_text']) . ' 金币,操作原因: '.(empty($_POST['bid_reason'])?'无':htmlspecialchars($_POST["bid_reason"], ENT_QUOTES, "UTF-8"))); } $_SESSION['youyax_error'] = 1; $this->redirect("admin" . C('default_url') . "user" . C('static_url')); }
(empty($_POST['bid_reason'])?'无':htmlspecialchars($_POST["bid_reason"], ENT_QUOTES, "UTF-8")));
续狗的ID已经上去了,可以看到有注入,那试试注释下
可以看到能注释后面的内容,那么就可以确定存在注入了
备注:因续狗mysql手工注入脑残,一直靠的是sqlmap跟大牛帮忙手工的,所以也就匿了,o(︶︿︶)o 唉 正在狂补手工注入的
因妹子嫌弃本屌是搞安全的,本屌很伤心,所以没继续挖下去,挖到一个后台的洗洗睡了。
别问我后台下的注入能干嘛,我会告诉你 当你搞一个站的时候,主站没希望,刚好有一个旁站 无奈admin admin进去了 拿不下shell,这个时候注入就可能起到了作用了
评论20次