[논문 리뷰] ISA-Based Trusted Network Functions And Server Applications In The Untrusted Cloud
이 논문은 신뢰할 수 없는 클라우드 환경에서 민감한 네트워크 기능과 서버 애플리케이션을 실행하기 위해 인텔 SGX 기반의 신뢰할 수 있는 실행 환경(TeE)을 제안하며, DPDK와 결합하여 보안성과 고성능 처리를 가능하게 한다. 이는 순수 성능에 가까운 성능(예: 평범한 트래픽 기준 약 22 Mpps)과 경쟁 가능한 성능(예: 암호화된 트래픽 기준 약 12 Mpps)을 달성하여 신뢰할 수 있는 클라우드 네트워킹과 컴퓨팅의 실현 가능성을 입증한다.
Nowadays, enterprises widely deploy Network Functions (NFs) and server applications in the cloud. However, processing of sensitive data and trusted execution cannot be securely deployed in the untrusted cloud. Cloud providers themselves could accidentally leak private information (e.g., due to misconfigurations) or rogue users could exploit vulnerabilities of the providers' systems to compromise execution integrity, posing a threat to the confidentiality of internal enterprise and customer data. In this paper, we identify (i) a number of NF and server application use-cases that trusted execution can be applied to, (ii) the assets and impact of compromising the private data and execution integrity of each use-case, and (iii) we leverage Intel's Software Guard Extensions (SGX) architecture to design Trusted Execution Environments (TEEs) for cloud-based NFs and server applications. We combine SGX with the Data Plane Development KIT (DPDK) to prototype and evaluate our TEEs for a number of application scenarios (Layer 2 frame and Layer 3 packet processing for plain and encrypted traffic, traffic load-balancing and back-end server processing). Our results indicate that NFs involving plain traffic can achieve almost native performance (e.g., ~22 Million Packets Per Second for Layer 3 forwarding for 64-byte frames), while NFs involving encrypted traffic and server processing can still achieve competitive performance (e.g., ~12 Million Packets Per Second for server processing for 64-byte frames).
연구 동기 및 목표
- 신뢰할 수 없는 클라우드 환경에서 데이터 기밀성과 실행 무결성이 위협받을 수 있는 민감한 네트워크 기능과 서버 애플리케이션을 배치하는 데 있어 핵심적인 보안 과제를 해결하기 위해.
- 신뢰할 수 있는 실행을 통해 인텔 SGX가 의미 있는 보안 이점을 제공할 수 있는 네트워크 기능과 서버 애플리케이션의 특정 사용 사례를 식별하기 위해.
- 인텔 SGX와 DPDK를 사용하여 클라우드 기반의 네트워크 기능과 서버 워크로드를 위한 고성능 TEE를 설계하고 프로토타yped하기 위해.
- 실제 네트워크 처리 시나리오에서 SGX 기반의 신뢰할 수 있는 실행이 초래하는 성능 오버헤드와 성능 트레이드오프를 평가하기 위해.
- 보안성과 고성능을 동시에 확보하는 클라우드 네트워킹 분야의 향후 연구를 위한 시스템 설계 트레이드오프와 열린 문제들에 대한 통찰을 제공하기 위해.
제안 방법
- 민감한 데이터와 코드의 기밀성과 무결성을 보장하기 위해 하드웨어로 보호된 격리된 에이전시(Enclave)를 생성하기 위해 인텔 소프트웨어 가드 엑스텐션(SGX)을 활용한다.
- 클라우드에서 고성능 데이터 경로 애플리케이션을 프로토타yped하기 위해 SGX와 데이터 플레인 개발 키트(DPDK)를 결합한다.
- 다양한 네트워크 처리 워크로드를 위한 TEE를 설계한다: 레이어 2/3 패킷 처리(평범한 및 암호화된 트래픽), 로드 밸런싱, 백엔드 서버 처리.
- 보안 트레이드오프를 관리하면서 ECALL/OCALL 전환 횟수를 최소화하고 가능한 한 비신뢰형 메모리 버퍼를 사용하여 성능 오버헤드를 최소화한다.
- 에이전시의 무결성과 진위성을 검증하기 위해 CPU 기반의 원격 및 현지 인증을 구현한다.
- Throughput(Mpps)과 와이어 스루풋(Gbps)을 측정하고 프로파일링하여 다양한 프레임 크기와 서버 수에서의 성능을 평가한다.
실험 결과
연구 질문
- RQ1신뢰할 수 없는 클라우드 환경에서 신뢰할 수 있는 실행이 유의미한 보안 이점을 제공할 수 있는 네트워크 기능과 서버 애플리케이션 워크로드는 무엇인가?
- RQ2이러한 워크로드에서 데이터 기밀성과 실행 무결성이 침해될 경우 발생할 수 있는 핵심 자산과 위협 영향은 무엇인가?
- RQ3SGX와 DPDK의 통합이 신뢰할 수 있는 네트워크 기능과 서버 애플리케이션의 성능에 어떤 영향을 미치는가?
- RQ4SGX 에이전시 내에서 ECALL/OCALL 전환과 메모리 복사 오버헤드로 인해 발생하는 성능 트레이드오프와 성능 저하 요인은 무엇인가?
- RQ5기본 설정, 확장, 패킷 처리 파이프라인 등의 다양한 설계 접근 방식이 SGX 기반 TEE의 성능과 확장성에 어떤 영향을 미치는가?
주요 결과
- 평범한 트래픽을 처리하는 NF는 순수 성능에 가까운 성능을 달성하여, 레이어 3 포워딩에서 64바이트 프레임 기준 약 2200만 패킷/초(Mpps)에 이를 수 있다.
- 암호화된 트래픽을 처리하는 NF와 서버 처리 기능은 경쟁 가능한 성능을 보이며, 백엔드 서버 처리에서 64바이트 프레임 기준 약 1200만 패킷/초(Mpps)에 이를 수 있다.
- 프레임 크기가 증가함에 따라 성능이 저하되며, 15대 서버 로드 밸런싱 시나리오에서 512바이트 프레임 기준으로는 스루풋이 약 900만 패킷/초(Mpps)로 떨어진다.
- ECALL 및 OCALL 전환은 상당한 성능 오버헤드를 유발하며, 전환 중 메모리 복사 검사로 인해 추가로 5~10%의 성능 저하가 발생한다.
- ECALL/OCALL 빈도를 최소화하고 비신뢰형 메모리 버퍼를 사용하면 평균 성능 향상을 이룰 수 있으나, 사이드채널 공격 또는 데이터 泄露 위험과 같은 보안 리스크가 수반된다.
- 더 큰 워크로드를 지원하기 위해 엑스트라 없는 서비스를 도입하고, 표준 C 라이브러리의 신뢰할 수 있는 통합을 통해 OCALL 의존도를 줄이기 위한 향후 연구가 필요하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.