CSRF中Referer的误解
来源:互联网 发布:2017年最流行的网络语 编辑:程序博客网 时间:2024/06/09 23:50
我抓包看了
1.如果 referer-policy 的值为never:删除 http head 中的 referer;
2.如果 referer-policy 的值为default:如果当前页面使用的是 https 协议,而正要加载的资源使用的是普通的 http 协议,则将 http header 中的 referer 置为空;
3.如果 referer-policy 的值为 origin:只发送 origin 部分;
4.如果 referer-policy 的值为 always:不改变http header 中的 referer 的值,注意:这种情况下,如果当前页面使用了 https 协议,而要加载的资源使用的是 http 协议,加载资源的请求头中也会携带 referer。
参考 http://www.freebuf.com/news/57497.html
以下是知乎上的一位答主的说法
作者:林键 链接:https://www.zhihu.com/question/29523405/answer/88875530
在百度搜索,不管你的目标页面是HTTPS还是HTTP,你都可以获得百度的referer头。
百度搜索给出的结果,其实是一个百度的跳转链接。你点击这个百度的跳转链接后,跳转到目标网站。
1 在用户使用高级浏览器时,百度的跳转链接是HTTPS协议的。
类似:
https://www.baidu.com/link?url=m-pYzY9M2-58hTU9e9734i0xhCYlzHacrag2g7POWEK&wd=&eqid=fb671fd900149caa0000000456d6599b
因为百度的页面增加了
<meta content="always" name="referrer">
标记, 可以让高级浏览器,把HTTPS的referer带给HTTP的页面。
2 在旧的浏览器下,百度的跳转链接是HTTP协议的。
类似:
http://www.baidu.com/link?url=m-pYzY9M2-58hTU9e9734i0xhCYlzHacrag2g7POWEK&wd=&eqid=fb671fd900149caa0000000456d6599b
HTTP页面当然可以把 HTTP的referer带给下一个页面。
针对此现象我的理解是:百度首先保证referer能够传递给目标网站,然后尽可能使用HTTPS保护自己的内容。
- CSRF中Referer的误解
- CSRF攻击防御---验证HTTP Referer
- Spring 中WebAppRootListener的误解
- TWebbrowser 中设置referer
- TWebbrowser 中设置referer
- HTTPHEAD中referer应用
- JSP中使用request.getHeader("referer")的一些问题
- 【旧资料整理】firefox中关于Referer的设置
- msyql int(x) 中x的误解
- javascript中对null, undefined的误解
- php中namespace几点易误解的地方
- 纠正css中对width的误解
- java 中容易误解的地方
- java中关于protected的一些误解
- 正则表达式中容易误解的地方
- CSS3选择器中容易误解的坑
- HTTP Referer 的故事
- django中CSRF的问题及解决
- 求两个数的最大公约数(c语言编写)
- GDI透明动画(多背景移动
- [51nod1792]Jabby's segment tree
- C++ PHP扩展
- 使用maven构建web项目
- CSRF中Referer的误解
- foreach 遍历
- 或许你不知道的10条SQL技巧
- 12 String
- 【备份】wikia关闭前所有H-Codes特殊码
- LINUX学习笔记(十)
- 实验楼楼赛19之备份日志文件
- Mysql使用到substring截取字符串
- 第8周项目4(2) 稀疏矩阵的三元组表示的实现及应用