软件定义网络中的跨应用投毒

栏目: 编程工具 · 发布时间: 5年前

作者: {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 的体系结构进行重新设计。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

蚁群算法及其应用

蚁群算法及其应用

李士勇 / 哈工大出版社 / 2004-9 / 25.00元

蚁群算法是意大利学者Dorigo等人于1991年创立的,是继神经网络、遗传算法、免疫算法之后的又一种新兴的启发式搜索算法。蚂蚁群体是一种社会性昆虫,它们有组织、有分工,还有通讯系统,它们相互协作,能完成从蚁穴到食物源寻找最短路径的复杂任务。模拟蚂蚁群体智能的人工蚁群算法具有分布计算、信息正反馈和启发式搜索的特点,不仅在求解组合优化问题中获得广泛应用,而且也用于连续时间系统的优化。 《蚁群算......一起来看看 《蚁群算法及其应用》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具