CORS跨域访问
什么是CORS
全称跨域资源共享,用来绕过SOP(同源策略)来实现跨域访问的一种技术。
CORS漏洞利用CORS技术窃取用户敏感信息
同源策略简介
同源策略是浏览器最核心也是最基本的安全功能,不同源的客户端脚本在没有明确授权的情况下,不能读写对方的dom、cookie、session、ajax等操作的权限资源。
同源有三个条件:协议、域名、端口相同
同源检测的示例
检测成功的之后同协议、同域名、同端口
-
漏洞产生原因
由于配置不当,Origin源未严格,从而造成跨域问题。Origin用于检测来自哪个域
两种跨域的方式
Cors允许浏览器向跨域服务器发出XmlHttpRequest请求,COSRS和JSONP的区别:CORS是JSONP的升级版,JSONP只能通过get方式请求,CORS支持get,post,head请求
只能通过浏览器发送GET包
是一种利用HTML中<script></script>元素标签,远程调用json文件来实现数据传递技术,它的特点是可以跨域读取数据。
JSONP跨域请求
CORS跨域请求
CORS的两种请求方式
请求方式为OPTIONS,这个请求是来询问的,请求头要包含以下字段
Origin:请求源
Access-Control-Request-Method