Access Control using Secured Container-based Virtualization

보안 컨테이너 가상화 기반 접근 제어

  • Published : 2017.10.25

Abstract

Container-based virtualization reduces performance overhead compared with other virtualization technologies and guarantees an isolation of each virtual execution environment. So, it is being studied to block access to host resources or container resources for sandboxing in restricted system resource like embedded devices. However, because security threats which are caused by security vulnerabilities of the host OS or the security issues of the host environment exist, the needs of the technology to prevent an illegal accesses and unauthorized behaviors by malware has to be increased. In this paper, we define additional access permissions to access a virtual execution environment newly and control them in kernel space to protect attacks from illegal access and unauthorized behaviors by malware and suggest the Container Access Control to control them. Also, we suggest a way to block a loading of unauthenticated kernel driver to disable the Container Access Control running in host OS by malware. We implement and verify proposed technologies on Linux Kernel.

Container 기반 가상화 환경에서는 가상 실행 환경 들이 호스트 OS를 공유함으로써 기존 가상화가 수반하는 오버헤드를 감소시키고, 가상 실행 환경 간의 isolation을 보장한다. 이로 인해 최근 embedded device와 같은 system 자원이 제한적인 환경에서도 서로 다른 가상 실행 환경 또는 호스트 실행 환경의 자원에 대한 접근을 차단할 수 있는 sandboxing의 목적으로 활발히 연구 및 적용되고 있다. 하지만, 가상 실행 환경들이 공유하는 호스트 OS 및 호스트 실행 환경에 존재하는 보안 취약점이 있을 경우 이를 악용한 공격자가 가상 실행 환경으로의 접근 및 제어를 할 수 있게 되는 보안 위협이 존재하여 이의 방지에 대한 필요성이 증가하였다. 본 논문에서는 가상 실행 환경에 대한 임의 접근 및 비인가 행위를 차단하기 위해 가상 실행 환경접근 권한 모델을 정의하고 이를 제어하는 Container 접근 제어 기법을 제안한다. 또한, 공격자의 Container 접근 제어 기능 무력화 방지를 위해 커널 드라이버 인증 기법을 제안한다. 제안된 기법은 Linux 커널에 구현 및 테스트되었으며, 가상 실행 환경에 대한 임의 접근 및 비인가 행위 차단 결과를 보인다.

Keywords