跨站点请求伪造(CSRF)跨站点请求伪造(Cross Site Request Forgery,简称CSRF)。由于重要操作的所有参数都是可以被攻击者猜到,攻击者即可伪造请求,利用用户身份完成攻击操作,如发布文章、购买商品、转账、修改资料甚至密码等。
常见发生位置:所有由用户(包括管理员)发起的操作点。
防御措施:
辅助验证方法:使用验证码。验证码是对抗CSRF攻击最简单有效的方法,但会影响用户的使用体验,并且不是所有的操作都可以添加验证码防护。因此,验证码只能作为辅助验证方法。
通用防护方法:添加足够随机的CSRF_TOKEN并每次更新,以防止参数被猜解。使用CSRF_TOKEN是目前通用的防护方法。
其他防御措施:验证HTTP Referer,拒绝不安全的来源。但服务器并非在任何情况下都能获取到Referer值。
说明 建议结合上述三种方法进行防御。