作者: {Fr4nk}@ArkTeam
原文作者: Benjamin E. Ujcich, Samuel Jero, Anne Edmundson, Qi Wang, Richard Skowyra, James Landry, Adam Bates, William H. Sanders, Cristina Nita-Rotaru
原文标题: Cross-App Poisoning in Software-Defined Networking
原文会议: 2018 ACM Conference on Computer and Communications Security
软件定义网络因其在设备控制功能的可编程和可扩展性受到越来越多的欢迎。基于 SDN 的网络应用蓬勃发展,由于每个应用必须访问或修改共享控制面中的数据,因此也就引入了严重的安全问题,甚至会破坏正常的网络运维。
作者提出了一种基于 SDN 控制面的攻击,并称之为跨应用投毒 (CAP) ,其原理主要是通过一个普通权限应用操纵共享控制面的状态从而欺骗更高权限的应用被动采取行动。基于角色的访问控制既不跟踪信息流也不强制执行信息流控制,因此无法有效防止此类攻击。
针对于此,作者提出了一种防御方法 ProvSDN ,它通过数据溯源跟踪信息流,并作为引用监控器来防止 CAP 攻击。作者在 ONOS 控制器上实现了 ProvSDN ,并证明了可以使用低延迟开销跟踪信息流。图 1 中分别展示了 SDN 架构的重要组件、通过 API 交互 / 数据面事件监听的应用交互。
图 1 SDN 架构概览和利用服务 API/ 事件回调的应用交互
为了系统性地识别 CAP 攻击,作者利用了应用间授权的方式生成数据,连同真实数据流一并传输,并通过构造漏洞 POC 来证明 CAP 在实践中的攻击过程和危害。作者构建的 CAP 安全组件分析结果如表 1 所示,其中任何可以写入源的应用都可以完成 CAP 攻击。
表 1 CAP 组件的静态分析结果
在作者提出的防御方法中, ProvSDN 通过 hook 所有控制器的 API 接口,从应用程序收集源信息、构建溯源图、并检查 API 请求来作为引用监控器抵御未知的 CAP 攻击。随后,作者在运行有 Open Vswitch2.7.0 的模拟环境中评估了 ProvSDN 的性能表现。
图 2 某应用回调 NB API 时 ProvSDN 架构图
图 3 显示了没有 ProvSDN 、未强制执行 IFC 的 ProvSDN 以及强制执行 IFC 的 ProvSDN 延迟。作者对三种情景中的每一种进行了 30 次试验,平均延迟分别为 11.66 ms , 28.51 ms 和 29.53 ms 。虽然 ProvSDN 增大了数据延迟,但随着更多应用和内部控制器接收事件的增多,可以注意到数据延迟在具有一定规模的流量上被进行了均分。这是由于与交换机中流规则匹配的后续数据包不需要转到控制器或应用程序上进行处理,即 ProvSDN 仅需要在相对不频繁的控制面状态变化上操作。
图 3 数据流启动延迟
最后,作者讨论了 ProvSDN 的实用性。具有安全模式的 ProvSDN 不会强制分离内存空间,并利用 Java 的访问控制来阻止应用程序访问私有数据结构。此处,作者还提出一种替代设计方案,是将每个应用程序分离到其自己的进程中,并将 API 调用桥接到控制器,从而通过底层操作系统强制隔离,但这需要对 ONOS 的体系结构进行重新设计。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- JudasDNS:域名服务器DNS投毒测试工具
- 从LFI到SMTP日志投毒到远程代码执行
- 一次出人意料而名留青史的 DNS 投毒攻击
- Android 自定义 View (04自定义属性)
- Vue自定义组件(简单实现一个自定义组件)
- Android 自定义View:深入理解自定义属性(七)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Objective-C编程
[美] Aaron Hillegass / 夏伟频、李骏 / 华中科技大学出版社 / 2012-9-25 / 58.00元
《Objective-C编程》讲述Objective-C编程语言和基本的iOS/Mac开发知识。作者首先从基本的编程概念讲起(变量、条件语句、循环结构等),接着用浅显易懂的语言讲解Objective-C和Foundation的知识,包括Objective-C的基本语法、 Foundation常用类 、内存管理、常用设计模式等,最后手把手教读者编写完整的、基于事件驱动的iOS/Mac应用。作者还穿插......一起来看看 《Objective-C编程》 这本书的介绍吧!