当前位置: 首页 > 知识库问答 >
问题:

Spring Security与CSRF攻击

穆招
2023-03-14

我正在开发一个java web应用程序,应该非常安全,所以我在SSL服务器上应用了spring security和spring MVC,并启用了CSRF;我使用POST成功地提交了所有表单和生成的CSRF令牌,但是有些页面有GET方法,如果任何攻击者从任何浏览器打开任何页面的源代码,他可以在表单标记中看到生成的CSRF令牌,那么他可以使用它向我们的网站发布任何内容,只要会话由受攻击的用户激活!!我说的对吗?

我应该做些什么使网站非常安全?我是否应该使用任何其他开源和spring security来覆盖其他攻击,如跨站点脚本等。?我是否应该强制所有页面使用POST以避免任何CSRF攻击?

X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY

共有1个答案

郑伟彦
2023-03-14

然而,一些页面有GET方法,如果任何攻击者从任何浏览器打开任何页面的源代码,他可以看到表单标记中生成的CSRF令牌,那么他可以使用它向我们的网站发布任何内容,只要受攻击的用户的会话是活动的!!我说的对吗?

是的,你是对的,使用GET会让你的网站泄露敏感信息。这正是Spring Security和RFC规范不鼓励使用GET请求发送敏感信息的原因。如果要发送CSRF令牌,则应发送。

我应该做些什么使网站非常安全?我是否应该使用任何其他开源和spring security来覆盖其他攻击,如跨站点脚本等。?

在跨站点脚本的情况下,即使使用Spring Security,如果您从HTML输入框中获取一个值,并直接保存它,而不对其进行HTML编码,然后将其显示回一个JSP文件中,如${value},您将引入XSS的可能性。

 类似资料:
  • 什么是CSRF CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。 那么CSRF到底能够干嘛呢?你可以这样简单的理解:攻击者可以盗用你的登陆信息,以你的身份模拟发送各种请求。攻击者只要借助少许的社会工程学的诡计,例如通过QQ等聊天软件发送的链接(有些还伪装成

  • 请澄清我对CSRF攻击的概念。在csrf中,我们从隐藏字段发送令牌,即, 我们会在会议的基础上提交表格。如果攻击者找到我的表单并更改隐藏值并提交表单,则他将成功。我怎样才能防止形成。

  • 本文向大家介绍Yii框架防止sql注入,xss攻击与csrf攻击的方法,包括了Yii框架防止sql注入,xss攻击与csrf攻击的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Yii框架防止sql注入,xss攻击与csrf攻击的方法。分享给大家供大家参考,具体如下: PHP中常用到的方法有: 调用: (必须放在接收数据之外) 注意: 表单提交值,为防止csrf攻击,控制器中需要加上:

  • 本文向大家介绍csrf 攻击是怎样攻击的? 如何防御相关面试题,主要包含被问及csrf 攻击是怎样攻击的? 如何防御时的应答技巧和注意事项,需要的朋友参考一下 get, post, delete, 分开, 避免使用get修改数据 避免让第三方站点访问cookie 对referrer进行验证 token 阻止第三方请求 .

  • 我读过关于CSRF和不可预测的同步令牌模式是如何用来防止它的。我不太明白它是如何工作的。 让我们以这个场景为例: 用户使用以下表单登录到站点: 服务器还将令牌存储在会话中。发送请求时,它将表单数据中的令牌与会话中的令牌进行比较。 当黑客可以编写JavaScript代码时,如何防止CSRF: 发送GET请求到站点 接收包含请求表单的html文本。 在html文本中搜索CSRF令牌。 使用该令牌发出恶

  • 问题内容: 特别是,我正在编写Django RESTful API来支持iOS应用程序,每当编写用于处理POST请求的方法时,我都会不断遇到Dj​​ango的CSRF保护。 我的理解是,iOS管理的cookie不会被应用程序共享,这意味着我的会话cookie是安全的,并且没有其他应用程序可以使用它们。这是真的?如果是这样,我可以将我所有的API函数都标记为CSRF免除吗? 问题答案: 那不是CSR