了解CSRF以前的必备知识html
一、同源策略java
同源策略-三个相同:协议、域名、端口浏览器
举例说明:安全
源URL为:http://www.example.com/dir/page.htmlcookie
协议为:httpdom
域名为:www.exampe.com网站
端口为:80(能够省略)spa
同源状况以下:htm
http://www.example.com/dir/otherpage.html (同源)blog
http://example.com/dir/page.html (不一样源 [域名不一样] )
http://111.com/dir/page.html (不一样源 [域名不一样] )
http://www.example.com:8080/dir/page.html (不一样源 [端口不一样] )
同源目的:
保证用户信息的安全,防止恶意的网站窃取数据
限制范围:
Cookie,LocalStorage和IndexDB没法读取
Dom没法获取
AJAX请求不能发送
二、Cookie的两个重要属性
Domain:当前要添加cookie的域名归属,未知名默认为当前域名
www.test.com 添加的 cookie 的默认域名为 www.test.com
Path: 当前要添加的cookie的路径归属,未知名默认当前路径
www.test.com/java/hostpot.html 添加的cookie的默认路径为 /java/
三、浏览器提交Cookie须要知足的两点
当前域名或者父域名下的cookie
当前路径或者父路径下的cookie
举例说明:
以 blog.test.com/ 为例
cookie1:[name=value,domain=.test.com path=/]
能够 .test.com 是 blog.test.com 的父域名
cookie2:[name=value,domain=blog.test.com path=/java/]
不能够 path 不一致
cookie3:[name=value,domain=www.test.com path=/]
不能够 域名不一致
cookie4:[name=value,domain=blog.test.com path=/]
能够 域名和Path都严格的保持了一致