首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在身份验证之前易受最近反序列化攻击影响的Spring HttpInvoker?

在身份验证之前易受最近反序列化攻击影响的Spring HttpInvoker?
EN

Stack Overflow用户
提问于 2015-11-11 16:29:43
回答 2查看 2.1K关注 0票数 2

最近的狐狸手套安全物品反序列化攻击带有指向主要应用服务器的示例代码的链接,以及Spring和Groovy应用程序,引起了许多恐慌。本文指出,这些攻击绕过身份验证,因为在进行身份验证检查之前,对象有效负载是反序列化的。不过,它并没有具体地命名或讨论Spring,而且我在其他地方也没有找到关于这一点的明确声明。

对于通过Spring公开的远程服务,使用带有基本身份验证的Security,会在反序列化(潜在的恶意)对象有效负载之前在HttpInvoker之前执行身份验证检查吗?或者,本文关于“身份验证不会保护您免受此攻击”的断言也适用于HttpInvoker服务吗?

EN

回答 2

Stack Overflow用户

发布于 2015-11-12 15:32:20

决定自己来测试一下。为了测试处理入站HTTP调用的事件序列,我设置了一个简单的Spring应用程序,如下所示:

  • 一个HelloWorld服务公开了一个简单的hello()方法,该方法将自定义HelloDto对象作为输入参数。
  • HelloDto中的自定义序列化逻辑记录序列化和反序列化。
  • Spring安全基本身份验证用于保护服务。

对于Security和Spring,我将日志提升到调试级别,然后通过一个简单的HelloWorldService测试客户端远程调用JUnit。我通过控制台日志确认Security在反序列化发生之前正在对调用方进行身份验证和授权。

正如我通过事件的顺序所想的,这是有意义的。Security是作为一个过滤器链实现的,而HTTP调用逻辑是由一个DispatcherServlet处理的,它在过滤器预先执行之后逻辑上得到了控制。

如果任何Spring专家能够确认这是一个准确的解释(或者特别是如果有任何模糊的“边缘情况”,在调用方被验证之前,反序列化仍然会咬我们一口),那将是非常感谢的。

票数 3
EN

Stack Overflow用户

发布于 2015-11-24 23:11:40

我会用谷歌搜索红木负载发生器。使用每个选项创建有效负载,然后将其缩到具有正确内容类型集的端点。在我的工作中,我们做到了这一点,并且惊讶于我们能够在我们的dev服务器上远程执行代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33655162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档