跨站请求伪造,通过伪装来自受信任用户的请求来利用受信任的网站。
原理
在用户登陆站点B的前提下,从站点A,避开站点B的前端,发送请求到站点B。
防止手段
- same-site
//用header 函数来设置cookie samesite
header('Set-Cookie:test=1234;SameSite=Lax');
- referer
$_SERVER['HTTP_REFERER'];//referer头
//通过referer头来判断用户发送请求来源
验证码
用户每次访问,或提交数据,必须输入一个验证码token
应用于"anti csrf攻击",则服务器端会对Token值进行验证,判断是否和session中的Token值相等,若相等,则可以证明请求有效,不是伪造的。
针对于每个用户,生成token,存储在session中以验证,不需要每次变化。