Java 安全之:csrf攻击总结
最近在维护一些老项目,调试时发现请求屡屡被拒绝,仔细看了一下项目的源码,发现有csrf token校验,借这个机会把csrf攻击学习了一下,总结成文。本文主要总结什么是csrf攻击以及有哪些方法来防范,接下来会再写一篇文章,从源码中来学习一下实战中是如何防御csrf攻击的。
主要内容如下:
什么是CSRF攻击
几种常见的攻击类型
CSRF的特点
防护策略
总结
1. 文章和马伊琍离婚!!!
由于之前用户已经登录,在登录状态还未过期时,只要用户主动访问上面的这个PHP页面,则攻击成功。
3. CSRF的特点
- 攻击一般发起在第三方网站,而不是被攻击的网站。被攻击的网站无法防止攻击发生。
- 攻击利用受害者在被攻击网站的登录凭证,冒充受害者提交操作;而不是直接窃取数据。
- 整个过程攻击者并不能获取到受害者的登录凭证,仅仅是“冒用”。
- 跨站请求可以用各种方式:图片URL、超链接、CORS、Form提交等等。部分请求方式可以直接嵌入在第三方论坛、文章中,难以进行追踪。
CSRF通常是跨域的,因为外域通常更容易被攻击者掌控。但是如果本域下有容易被利用的功能,比如可以发图和链接的论坛和评论区,攻击可以直接在本域下进行,而且这种攻击更加危险。