地方联播政务动态

新农村网_新农村客户端

当前位置:

边缘云计算安全相关技术研究进展(4)

时间:2021-08-31 09:51人气:来源: 《自动化博览》

  一是,针对容器可访问系统调用过多的安全问题。自2016年1.10版本,Docker支持了seccomp机制,以限制运行在Docker容器中的应用能够访问的系统调用,降低了宿主机的攻击面。但是对于特定的容器来说,Docker默认允许的系统调用仍旧很多(总共有300多个系统调用,默认仅禁用44个)。为了解决此问题,中科院信工所提出了一种应用容器的分阶段执行来区分容器运行的必要和不必要的系统调用方法SPEAKER,从容器的运行过程中删除部分只在容器的启动阶段使用的系统调用。知名开源工具DockerSlim通过创建临时容器,跟踪用户在临时容器中的操作,得到容器在运行时需要的系统调用。但是上述方法都不能保证容器运行时需要的所有系统调用都动态跟踪得到,可能导致容器运行时出错。北京大学研究人员提出了一种将动态分析和静态分析结合的方法,通过动态分析获得容器启动时所需系统调用及运行时所需访问的可执行文件,再静态分析可执行文件需要访问的系统调用,得到特定容器应用运行时需要的系统调用,减少攻击面的同时保证了容器不出错,可用性更强。

  二是,针对容器拥有的特权过大的安全问题。为了增强容器的安全性,大多数容器采用了Linux内核提供的权能机制(Capability机制)来约束容器内部进程的能力。通过Capability机制,超级用户的特权被划分为38个不同的权能(Capability),每种权能代表了某些被允许的特权行为,例如拥有权能CAP_NET_ADMIN,表示拥有了执行与网络相关操作的特权。自2018年1.18版本,默认情况下,由Docker创建的容器通常拥有14种权能(默认禁用了23个,共37个权能)。但是对于特定的容器来说,Docker默认拥有的特权仍旧有一部分是不必要的。为了解决此问题,韩国科学技术院(KAIST)通过使用strace跟踪进程执行时所需的系统调用,然后把这些系统调用映射到相应的权能,进而得到容器在运行时所需要的最小权能集,限制容器内部进程运行时的特权,减少特权过大带来的安全风险。

  3.3 边缘云计算环境下的可信硬件支持

  由于可信硬件提供的安全隔离运行环境能够增强边缘服务器的安全保障能力,人们近年来开始关注边缘服务器的可信硬件支持技术研究。一方面,能够有效解决边缘服务器上的软件系统远程维护和更新困难、缺陷容易被黑客利用问题;另一方面,能够保障可信硬件支持环境下,在边缘服务器上部署云原生应用可能存在的兼容性和性能开销大的问题。

  (1)可信硬件能力支持及性能优化技术

  一些研究工作关注在边缘服务器端集成可信硬件的可行性评估,以及如何优化可信硬件支持下的上下文切换、内存页替换、内存加解密性能,这类方案主要解决两类安全问题,具体如下:一是,针对边缘服务器缺乏硬件安全能力支持的问题。美国韦恩州立大学对TEE可信硬件集成到边缘计算节点的可行性进行了系统性的评估:

  · 在Intel Fog Node边缘服务器(8核Intel XeonE3-1275处理器和32GB DDR4内存)上进行了集成Intel SGX能力的测试,其中上下文切换时间为2~3微秒、敏感数据计算时间为6.7微秒、总体时间开销下降0.48%。

  · 在ARM Juno Board(ARM V8)上进行了集成ARM TrustZone能力的测试,其中上下文切换时间为0.2微秒、敏感数据计算时间为9.67微秒、总体时间开销下降0.13%。

  · 在带AMD EPYC-7251处理器的机器上进行了集成AMD内存加密能力的测试,其中上下文切换时间为3.09微秒、敏感数据计算时间约0微秒、总体时间开销下降4.14%。结论是,TEE集成后给边缘服务器节点带来的计算性能开销都比较低,具有可行性。

  二是,针对可信硬件支持带来的计算性能开销的问题。针对可信硬件支持下安全区代码与非安全区代码交互/上下文切换可能产生较大性能开销的问题,英特尔提出了一种通过交互/上下文切换时的异步调用机制进行优化。SGX的EPC内存目前一共仅有128MB(其中只有96MB是可用的),可用内存空间很小,可能会带来计算过程中频繁的内存页面替换问题,产生较大的性能开销。针对该问题,佐治亚理工学院研究人员提出了一种减小EPC页面元信息占用空间的方法STANlite进行了优化。针对内存加密开销大的问题,英国LSDS研究组提出了一种尽量对内存数据采用连续访问的数据结构、避免采用随机访问的数据结构设计的方法进行了优化。

  (2)基于可信硬件的应用支持技术

标签:

热门标签