当前位置: 首页 > news >正文

老公给人做网站结果网站卖假货珠海仿站定制模板建站

老公给人做网站结果网站卖假货,珠海仿站定制模板建站,安徽人,网站内容建设和管理跨站请求伪造#xff08;CSRF#xff09;是一种常见的网络攻击手段#xff0c;它允许攻击者在不知情的用户浏览器中发起恶意请求。这种攻击利用了网站对用户浏览器的信任。如果用户在浏览器中已经登录了一个网站#xff0c;攻击者就可以构造一个请求#xff0c;这个请求能…跨站请求伪造CSRF是一种常见的网络攻击手段它允许攻击者在不知情的用户浏览器中发起恶意请求。这种攻击利用了网站对用户浏览器的信任。如果用户在浏览器中已经登录了一个网站攻击者就可以构造一个请求这个请求能够利用用户的登录状态在该网站上执行未授权的操作。 CSRF保护机制 为了防御CSRF攻击网站需要确保它们只接受那些明确意图发起的请求。一种常见的防御手段是使用CSRF令牌也称为CSRF令牌。这个令牌是一个随机值服务器在渲染表单时生成并包含在表单中随后任何对服务器的请求都需要包含这个令牌。由于攻击者无法访问这个令牌他们构造的恶意请求将会失败。 Spring Security中的CSRF保护 Spring Security 提供了内置的CSRF保护机制。默认情况下它会为所有的POST、PUT、PATCH和DELETE请求启用CSRF保护。它通过CsrfFilter过滤器实现这一功能。 CsrfFilter工作原理 当CsrfFilter激活时它会在每个请求上执行以下操作 检查CSRF令牌如果请求是一个需要被保护的HTTP方法例如POST它会检查请求中是否含有有效的CSRF令牌。生成和存储CSRF令牌对于每个新的会话CsrfFilter会生成一个新的CSRF令牌并在服务器端存储这个令牌。令牌也会被发送到客户端通常是作为一个表单的隐藏字段。验证CSRF令牌当用户提交一个表单时客户端发送的令牌必须与服务器端存储的令牌匹配。如果令牌不匹配请求将被拒绝。 CSRF保护的配置 在Spring Security配置中默认已经启用了CSRF保护。但是你可以按需修改或禁用这一功能。以下是一个示例展示如何在Spring Security配置中自定义CSRF保护 EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter {Overrideprotected void configure(HttpSecurity http) throws Exception {http// 其他配置....csrf(csrf - csrf.csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse()));// 此配置使用了基于Cookie的CSRF令牌存储策略并将CSRF令牌作为一个JavaScript可访问的cookie发送给客户端。} }生成和验证CSRF令牌的源码解析 CsrfFilter类是Spring Security中处理CSRF保护逻辑的关键。在源码层面CsrfFilter会使用一个CsrfTokenRepository来存储CSRF令牌。默认情况下使用的是HttpSessionCsrfTokenRepository但你可以通过配置改变这一行为。 当处理请求时CsrfFilter会调用CsrfTokenRepository来加载当前的CSRF令牌检查请求中的令牌是否与之匹配。匹配逻辑主要在CsrfFilter的doFilterInternal方法中实现 protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)throws ServletException, IOException {CsrfToken csrfToken this.tokenRepository.loadToken(request);final boolean missingToken csrfToken null;if (missingToken) {csrfToken this.tokenRepository.generateToken(request);this.tokenRepository.saveToken(csrfToken, request, response);}request.setAttribute(CsrfToken.class.getName(), csrfToken);request.setAttribute(csrfToken.getParameterName(), csrfToken);if (!this.requireCsrfProtectionMatcher.matches(request)) {filterChain.doFilter(request, response);return;}String actualToken request.getHeader(csrfToken.getHeaderName());if (!csrfToken.getToken().equals(actualToken)) {if (this.logger.isDebugEnabled()) {this.logger.debug(Invalid CSRF token found for UrlUtils.buildFullRequestUrl(request));}if (missingToken) {this.accessDeniedHandler.handle(request, response, new MissingCsrfTokenException(actualToken));}else {this.accessDeniedHandler.handle(request, response, new InvalidCsrfTokenException(csrfToken, actualToken));}return;}filterChain.doFilter(request, response); }从上面的代码可以看出CsrfFilter首先尝试从存储中加载CSRF令牌。如果没有找到它会生成一个新的令牌。然后它检查如果请求需要CSRF保护请求中的令牌必须与存储中的令牌匹配。 通过这种机制Spring Security提供了一种强大的方式来自动防御CSRF攻击同时也提供了足够的灵活性以适应不同应用的需求。
http://www.hkea.cn/news/14339365/

相关文章:

  • 教学网站建设论文趣丁号友情链接
  • 在线购物网站建设流程深圳设计总院
  • 做网站公司郑州郑州的网站建设公司排名登录建设银行网站打不开
  • 浦口国家建设部网站会展设计专业学什么
  • 有什么兼职做设计的网站好手机上能搭建网站吗
  • 宁国市城乡与住房建设网站个人网站建设服务
  • 省博物馆网站建设闽清县建设局网站
  • 自助定制网站开发公司文件乱码了怎么恢复
  • 足球网站怎么做的工作服定做厂家 成都
  • 搞笑资讯网站源码手机上制作网页的软件
  • 河南专业建网站图片做记录片的是哪个网站
  • 公司如何办网站百度推广开户多少钱一个月
  • 网站建设推广熊掌号王野天个人资料
  • 网站开发备案费用销售类网站模板
  • 广西高端网站建设国外工作招聘网站
  • 服装 网站模板 wordpress深圳市建设注册中心网站
  • 高端网站开发找苏州觉世品牌怎么定义自豪地采用WordPress
  • 网站一年的费用网站建设开发案例教程视频教程
  • 获取网站漏洞后下一步怎么做军事网站模板下载
  • php网站作业模版wordpress主题seo
  • 给公司做网站 优帮云it外包前景
  • 国内vps做网站要备案吗wordpress 访问不了
  • 手机网站建设请示让自己的电脑做网站的服务器
  • 重庆seo网站管理去黄山旅游攻略和费用
  • 做网站托管的好处白酒网站源码
  • 做网站设计素材网站模块添加
  • 网站源代码分列怎么做做网站网站要找谁
  • 给人做网站昆山网站建设工作室
  • 怎样做企业网站宣传环保主题的网站模板
  • 那里可以建网站成品短视频代码推荐大全