CSRF漏洞现状
CSRF(Cross-site request forgery)
跨站请求伪造,也被称为 One Click Attack
或者 Session Riding
,通常缩写为 CSRF
或 XSRF
,是一种对网站的恶意利用。尽管听起来像跨站脚本( XSS
),但它与 XSS
非常不同, XSS
利用站点内的信任用户,而 CSRF
则通过伪装成受信任用户的请求来利用受信任的网站。与 XSS
攻击相比, CSRF
攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比 XSS
更具危险性。
CSRF
是一种依赖web浏览器的、被混淆过的代理人攻击( deputy attack
)。
POM依赖
<!-- 模板引擎 freemarker --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency> <!-- Security (只使用CSRF部分) --> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-web</artifactId> </dependency>
配置过滤器
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } /** * 配置CSRF过滤器 * * @return {@link org.springframework.boot.web.servlet.FilterRegistrationBean} */ @Bean public FilterRegistrationBean<CsrfFilter> csrfFilter() { FilterRegistrationBean<CsrfFilter> registration = new FilterRegistrationBean<>(); registration.setFilter(new CsrfFilter(new HttpSessionCsrfTokenRepository())); registration.addUrlPatterns("/*"); registration.setName("csrfFilter"); return registration; } }
在form请求中添加CSRF的隐藏字段
<input name="${(_csrf.parameterName)!}" value="${(_csrf.token)!}" type="hidden" />
在AJAX请求中添加header头
xhr.setRequestHeader("${_csrf.headerName}", "${_csrf.token}");
jQuery的Ajax全局配置
jQuery.ajaxSetup({ "beforeSend": function (request) { request.setRequestHeader("${_csrf.headerName}", "${_csrf.token}"); } });
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- XSS 攻击的处理
- 针对图形处理器的黑客攻击行为侵犯了用户隐私
- 所有 Intel 处理器面临新攻击 SPOILER,软件层面无解
- 英特尔处理器被发现新的侧信道攻击漏洞 PortSmash
- 研究揭露AMD处理器存在漏洞,可致两种新型侧信道攻击
- 什么是CSRF攻击、什么是XSS攻击、什么是SQL输入攻击,如何防御攻击
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Shallows
Nicholas Carr / W. W. Norton & Company / 2010-6-15 / USD 26.95
"Is Google making us stupid?" When Nicholas Carr posed that question, in a celebrated Atlantic Monthly cover story, he tapped into a well of anxiety about how the Internet is changing us. He also crys......一起来看看 《The Shallows》 这本书的介绍吧!