基于英特尔软件防护扩展(Intel SGX)的 Snort 入侵检测系统
网络与互联网体系结构
2018-02-05 v1 密码学与安全
摘要
网络功能虚拟化(NFV)通过将网络中继盒外包给公有或私有云,承诺带来基础设施、人员和管理成本降低的好处。不幸的是,在云中运行网络功能会带来安全挑战,尤其是对于复杂的状态化服务。在本文中,我们描述了利用英特尔软件防护扩展(Intel SGX)技术加固中继盒之王——入侵检测系统(IDS)——的经验。我们使用 Intel SGX 保护的 IDS 称为 SEC-IDS,是一个未修改的带有 DPDK 网络层的 Snort 3,可实现 10Gbps 线速。SEC-IDS 通过将所有 Snort 代码运行在 Intel SGX 飞地内来保证计算完整性。同时,SEC-IDS 通过将网络 I/O 保留在飞地之外,实现了接近原生的性能,吞吐量接近原始 Snort 3 的 100%。我们的实验表明,性能仅受当前基于 Intel SGX Skylake 的 E3 Xeon 平台上可用的适中飞地页缓存大小的限制。最后,我们通过使用 Graphene-SGX 库操作系统将移植工作量保持在最小。Snort 中仅修改了 27 行代码(LoC),Graphene-SGX 本身修改了 178 行代码。
引用
@article{arxiv.1802.00508,
title = {Snort Intrusion Detection System with Intel Software Guard Extension (Intel SGX)},
author = {Dmitrii Kuvaiskii and Somnath Chakrabarti and Mona Vij},
journal= {arXiv preprint arXiv:1802.00508},
year = {2018}
}