CSRF(Cross—Site Request Forgery)跨站点请求伪造,主要是利用浏览器端未过期的cookie信息伪造身份通过服务器的身份验证。
现在有一个存在CSRF漏洞的网站A,攻击者的网站B,用户User
用户打开浏览器访问网站A,登录用户密码;网站A返回用户的cookie信息,保存到用户浏览器;用户未退出网站A之前,打开一个Tab页面,访问攻击者网站B;攻击者返回一段代码,这段代码将会在用户浏览器自动执行并向刚刚的网站A发起一个请求;由于浏览器请求会自动携带上cookie,A网站直接使用cookie通过身份验证,攻击者完成身份伪造。referrer, origin, host的区别
在 HTTP 头中自定义属性并验证 (1)原理: CSRF攻击,本质是利用浏览器会自动携带cookie这个特点。所以我们可以在cookie之外的请求数据中做一些自定义验证。使用JWT(JSON Web Token) (1)原理: token其实与自定义属性类似,只不过token会组装到请求头中而不是请求数据中。CSRF攻击与防御
