标签归档:cookie,同源策略

Cookie与同源策略的问题

0x00 简介

在浏览网站的时候,我们可以看见每个域名的cookie域范围都不一样,如果你看见cookie域与网站的域名不一样,那就可能是第三方cookie。这里我们不讨论第三方cookie,先从cookie域安全搞起:)

0x01 思路

在攻击网站的时候,我们主站拿不下的时候,往往就从旁站开始搞起。而cookie设置域范围也一样。

1.假设本站为www.leesec.com 我设置cookie的域范围为www.leesec.com,但是我又设置了window.domain=leesec.com,导致blog.leesec.com(我随便取的) 与www.leesec.com同源,这样我们可以通过同源策略可以获取到www.leesec.com的cookie,这个例子我归为(安全的cookie域,不安全的同源)www.leesec.com/setcookie.html页面代码如下:

<script type="text/javascript">
document.domain="leesec.com";
setCookie("user","admin");
function setCookie(name,value){
	var date=new Date();
	date.setTime(date.getTime()+3*24*60*60*1000);
	document.cookie=name+"="+value+";expires="+date.toGMTString()+";path=/";
}
</script>

blog.leesec.com/getcookie.html页面代码如下

<iframe id="test" src="http://www.leesec.com/setcookie.html"></iframe>
<script type="text/javascript">
document.domain="leesec.com";
var dom=document.getElementById("test");
dom.onload=function(){
	alert(dom.contentWindow.document.cookie);
}
 
</script>

这样blog.leesec.com页面就可以获取到www.leesec.com的cookie。
同理cookie的域不安全,域名同源安全,也是可以被攻破的。
0x02 总结
2者之中 如果有一方安全性做的很差,整个网站的cookie与同源安全性就取决于弱的一方。