一个实用的 .NET Remoting Architecture 漏洞利用

信息安全 开发 。网
2021-09-11 01:21:41

如果您要通过实际攻击来演示.NET Remoting Architecture漏洞,您会选择哪一个?

我已经阅读了J. Forshaw 关于通过序列化打破 .NET (PDF) 的白皮书,彻底地用 Google 搜索过,现在我想实现一个 .NET Remoting 服务的有效利用。托管服务的位置无关紧要。它可以是 ASP、IIS、Windows 服务或其他任何东西。

1个回答
  1. DoS 攻击 - 鉴于这些框架(它们是 C#-VB-C...)的跨技术性质,它们通常很难保护连接“端口”。因此,如果您可以枚举并找到连接点,您可以经常淹没它们或让它们保持忙碌,并通过使框架的“接收”端挨饿来创建 DoS 攻击。这通常不难做到,除非在架构中投入了大量精力并妥善保护,否则这是一个容易实现的目标。

  2. 资源匮乏攻击:

一个。代理资源攻击 - 通常给定由这些框架实现的代理方案方案,通常需要一个松散绑定的代理,在设置和取消资源时不会显式销毁。这允许攻击者可以编写脚本来炸毁代理资源创建饥饿场景。

湾。物理资源攻击 - 用于膨胀/放气对象的序列化机制可以在多个点创建物理资源攻击。您可以创建对象炸弹 - 大量消耗资源的大型对象,从而导致系统关闭或饥饿;或者在递归 xml 序列化的情况下,您可以通过使用绑定系统的 xml 处理来创建处理器和内存资源消耗。

  1. 代码注入

一个。突变 - 这是您对原始代码或对象进行突变但将新代码注入其中的地方。每种语言都有自己的克服方法和防护措施,但通常是可行的。

湾。Collat​​eral - 这是您将代码变异或注入辅助语言的地方,例如将新 SQL 注入数据库交互,或在 Web 场景中推出新的 Javascript。