如果您要通过实际攻击来演示.NET Remoting Architecture漏洞,您会选择哪一个?
我已经阅读了J. Forshaw 关于通过序列化打破 .NET (PDF) 的白皮书,彻底地用 Google 搜索过,现在我想实现一个 .NET Remoting 服务的有效利用。托管服务的位置无关紧要。它可以是 ASP、IIS、Windows 服务或其他任何东西。
如果您要通过实际攻击来演示.NET Remoting Architecture漏洞,您会选择哪一个?
我已经阅读了J. Forshaw 关于通过序列化打破 .NET (PDF) 的白皮书,彻底地用 Google 搜索过,现在我想实现一个 .NET Remoting 服务的有效利用。托管服务的位置无关紧要。它可以是 ASP、IIS、Windows 服务或其他任何东西。
DoS 攻击 - 鉴于这些框架(它们是 C#-VB-C...)的跨技术性质,它们通常很难保护连接“端口”。因此,如果您可以枚举并找到连接点,您可以经常淹没它们或让它们保持忙碌,并通过使框架的“接收”端挨饿来创建 DoS 攻击。这通常不难做到,除非在架构中投入了大量精力并妥善保护,否则这是一个容易实现的目标。
资源匮乏攻击:
一个。代理资源攻击 - 通常给定由这些框架实现的代理方案方案,通常需要一个松散绑定的代理,在设置和取消资源时不会显式销毁。这允许攻击者可以编写脚本来炸毁代理资源创建饥饿场景。
湾。物理资源攻击 - 用于膨胀/放气对象的序列化机制可以在多个点创建物理资源攻击。您可以创建对象炸弹 - 大量消耗资源的大型对象,从而导致系统关闭或饥饿;或者在递归 xml 序列化的情况下,您可以通过使用绑定系统的 xml 处理来创建处理器和内存资源消耗。
一个。突变 - 这是您对原始代码或对象进行突变但将新代码注入其中的地方。每种语言都有自己的克服方法和防护措施,但通常是可行的。
湾。Collateral - 这是您将代码变异或注入辅助语言的地方,例如将新 SQL 注入数据库交互,或在 Web 场景中推出新的 Javascript。