跨域CORS JSONP回调 域名接管劫持
1.0 前置知识
我们首先要学习下同源策略,这在之前的博客中说过很多次了,同源策略限制了来自不同源的Web页面脚本如何相互交互,以防止恶意网
站读取另一个网站的数据。这里的“源”指的是协议(http或https)、域名以及端口号的组合。同源策略的核心原则是,只有当两个URL的
协议、域名和端口都完全相同时,它们才被视为同源。
有了同源策略像我们之前的csrf等攻击手段就可能被拦截
同源策略做检测的浏览器,不是服务器
同时我们还需要明白
1.1 CORS
既然存在同源策略,那网站如果想要使用别的网站的资源应该怎么办呢?这时候就要用到CORS即跨源资源共享,该机制使用额外的HTTP
头来告知浏览器让一个域的web应用访问不同源服务器上的指定资源,浏览器通过识别http头来判断跨域请求是否是CORS,是否进行拦截
请求网站如果开启了CORS,会在请求的响应报文中注明可以被跨域请求的域名
首部字段为:Access-Control-Allow-Origin:域名
域名处设置为*
那么所有的域名都可以跨域对其资源进行请求。