[논문 리뷰] Reins to the Cloud: Compromising Cloud Systems via the Data Plane
이 논문은 클라우드 환경에서 가상 스위치, 특히 Open vSwitch (OvS)가 잘못된 보안 가정과 프로토콜 파서의 약점으로 인해 데이터 플레인을 통해 원격 코드 실행 공격을 받을 수 있음을 입증한다. 저자들은 OvS 코드베이스의 오직 2%만 퍼즈(fuzzing)하여 최소한의 자원으로 100초 이내에 OpenStack을 포함한 클라우드 시스템을 완전히 해킹함으로써, 낮은 능력의 공격자도 데이터 플레인을 통해 전체 클라우드 인fra를 뒤흔들 수 있음을 드러낸다.
Virtual switches have become popular among cloud operating systems to interconnect virtual machines in a more flexible manner. However, this paper demonstrates that virtual switches introduce new attack surfaces in cloud setups, whose effects can be disastrous. Our analysis shows that these vulnerabilities are caused by: (1) inappropriate security assumptions (privileged virtual switch execution in kernel and user space), (2) the logical centralization of such networks (e.g., OpenStack or SDN), (3) the presence of bi-directional communication channels between data plane systems and the centralized controller, and (4) non-standard protocol parsers. Our work highlights the need to accommodate the data plane(s) in our threat models. In particular, it forces us to revisit today's assumption that the data plane can only be compromised by a sophisticated attacker: we show that compromising the data plane of modern computer networks can actually be performed by a very simple attacker with limited resources only and at low cost (i.e., at the cost of renting a virtual machine in the Cloud). As a case study, we fuzzed only 2\% of the code-base of a production quality virtual switch's packet processor (namely OvS), identifying serious vulnerabilities leading to unauthenticated remote code execution. In particular, we present the "rein worm" which allows us to fully compromise test-setups in less than 100 seconds. We also evaluate the performance overhead of existing mitigations such as ASLR, PIEs, and unconditional stack canaries on OvS. We find that while applying these countermeasures in kernel-space incurs a significant overhead, in user-space the performance overhead is negligible.
연구 동기 및 목표
- 가상 스위치가 클라우드 및 SDN 환경에 미치는 보안 위험, 특히 데이터 플레인에서의 위험을 조사하기 위해.
- 오직 정교한 공격자만 데이터 플레인을 해킹할 수 있다는 일반적인 가정을 도전하기 위해.
- Open vSwitch (OvS)와 같은 널리 사용되는 가상 스위치의 취약점을 악용할 수 있는지의 실현 가능성을 평가하기 위해.
- 사용자 공간과 커널 공간에서의 일반적인 소프트웨어 하드닝 기법(예: ASLR, PIE, 스택 캐니언)의 성능 오버헤드를 평가하기 위해.
- 클라우드 보안에서 데이터 플레인을 보안 위협 모델에 첫 번째 공격 표면으로 포함시켜 재고할 것을 주장하기 위해.
제안 방법
- 저자들은 불완전한 권한 분리, SDN 내의 논리적 중심집중, 양방향 컨트롤러-스위치 통신, 비표준 프로토콜 파서라는 네 가지 핵심 요소에 중점을 둔 위협 모델 분석을 수행한다.
- Open vSwitch (OvS)의 패킷 처리 컴포onent에 대해 블랙박스 퍼즈 기법을 적용하여, 코드베이스의 오직 2%만 대상으로 하여 취약점을 탐지한다.
- OvS에서 인증 없이 원격 코드 실행을 가능하게 하는 커스텀 악성코드인 'rein worm'을 개발하여 클라우드 테스트베드의 완전한 해킹을 달성한다.
- 사용자 공간과 커널 공간 환경에서 OvS에 적용된 보안 대응 조치(ASLR, PIE, 무조건적 스택 캐니언)의 성능 영향을 실험적으로 평가한다.
- 실제 클라우드 배포 환경(OpenStack)을 활용하여 악성코드의 효과성과 시스템 가용성 및 격리성에 미치는 영향을 평가한다.
실험 결과
연구 질문
- RQ1낮은 자원을 가진 공격자가 가상 스위치의 데이터 플레인만을 공격하여 클라우드 시스템을 해킹할 수 있는가?
- RQ2Open vSwitch와 같은 가상 스위치에서 이러한 공격을 가능하게 하는 주요 아키텍처적 및 구현적 결함은 무엇인가?
- RQ3일반적인 소프트웨어 하드닝 기법이 가상 스위치 데이터 플레인에서 보안을 향상시키면서도 성능 오버헤드를 최소화하는 데 얼마나 효과적인가?
- RQ4SDN의 논리적 중심집중과 양방향 컨트롤러 통신이 데이터 플레인 공격 표면을 얼마나 악화시키는가?
- RQ5생산 수준의 가상 스위치에서 코드의 소수의 부분만을 퍼즈해도 전체 시스템의 해킹이 가능할 수 있는가?
주요 결과
- 간단하고 자원이 제한된 공격자가 OvS 데이터 플레인의 취약점을 악용하여 100초 이내로 전체 OpenStack 클라우드 설정을 해킹할 수 있다.
- OvS 코드베이스의 2%만 퍼즈하여도 인증 없이 원격 코드 실행이 가능한 심각한 취약점이 드러났으며, 이는 데이터 플레인 컴ponent의 높은 악용 가능성( exploitability )을 입증한다.
- 'rein worm' 악성코드는 프로토콜 파서의 버퍼 오버플로우를 이용하여 격리 메커니즘을 우회하고 완전한 시스템 탈취를 성공적으로 달성한다.
- ASLR, PIE, 스택 캐니언과 같은 소프트웨어 하드닝 기법은 사용자 공간에 적용할 경우 성능 오버헤드가 거의 없어 생산 환경에서 실현 가능하다.
- 반대로 커널 공간에 동일한 조치를 적용할 경우 성능 저하가 심각하게 발생하므로, 배포 전략을 신중히 수립할 필요가 있음을 시사한다.
- 본 연구는 현재의 위협 모델이 데이터 플레인을 충분히 고려하지 못하고 있으며, 현대 클라우드 아키텍처에서 가상 스위치가 치명적인, 그러나 부족한 보호를 받는 공격 표면임을 드러낸다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.