개인 개발자(업체)의 신뢰 실행 환경 기술 활용을 위한 프라이빗존 (privateZone) 정보보호 대학원 CySecLab
제안 배경 신뢰 실행 환경 (Trusted Execution Environment) 이란? 프로그램의 중요 로직을 “격리”하여 보호 대표적 상용 기술의 예: ARM TrustZone 과 Intel SGX 스마트 기기 일반 실행 환경 신뢰 실행 환경 Crypto
제안 배경 신뢰 실행 환경의 활발한 활용 전세계 수천만 대의 PC 및 스마트 기기 (e.g., 스마트 폰, TV, 냉장고) 등에서 활용 중 ARM TrustZone은 IoT 기기에서도 활용 가능 IoT의 발전으로 신뢰 실행 환경의 활용 또한 비약적으로 증가될 것으로 예상
기존 TEE 활용 방법 기존 ARM TrustZone의 활용 방식 스마트 기기 제조사 & 신뢰 실행 환경 운영체제 개발사 개발자 스마트 기기 1. 유료 개발자 등록 2. 비공개 개발툴 제공 5. 검수 및 설치 4. 설치 요청 3. 신뢰 실행 응용 프로그램 작성
기존 방식의 문제점 폐쇄적인 개발 구조 유료 정책 (값비싼 이용료) 기기 제조사나 신뢰 실행 환경 운영 체제 개발사에 의존적 모든 응용 프로그램은 검수 후에 신뢰 실행 환경에 설치 (보안 이유) 학계 연구에서의 제한적인 신뢰 실행 환경 활용. 유료 정책 (값비싼 이용료) TrustTonic의 경우 3천만원/년, 다운로드당 추가 요금 발생 개인 개발자나 중소 보안 업체의 제한적인 신뢰 실행 환경 활용.
Private Execution Environment 새로운 제안 방법 새로운 형태의 신뢰 실행 환경 구성 및 제공 Private Execution Environment (개인 신뢰 실행 환경) 신뢰 실행 환경 (기존의 TEE) 일반 실행 환경 자유로운 개발 및 설치 보장 Crypto 중소 업체 및 개인 개발자
구현 방식 가상화 기반으로 Private Execution Environment (PrEE) 생성 TrustZone과의 연동을 고려하여 설계 (가상화와 TrustZone의 연동) 3rd party 앱 설치되는 공간이므로 앱간의 안전한 “격리”를 고려 TEE PrEE REE Kernel Mode User Monitor PrivateZone-aware Application Security Critical Logic (SCL) Normal Applications TEE Services Rich OS Secure OS PrEE Kernel Components PrivateZone Framework Hardware-based Isolation Software-based Environment switch Conrol flow service invocation
사용 방식 개발자는 중요한 로직 (e.g., 암호화 함수)을 분리하여 PrEE에 설치하여 실행. 일반 실행 환경 격리된 환경에서 안전하게 실행 응용프로그램 중요 로직 호출 암호 모듈 자유로운 설치 결과 전송 개인 개발자 실행 흐름
시나리오 – 활용 예시 1 개인 개발자 (안드로이드)의 응용프로그램 중 높은 보안성이 요구되는 부분은 PrEE에 설치하여 실행 일반 실행 환경 interaction 개인 신뢰 실행 환경 (PrEE) 자유로운 설치 개인 암호 모듈 개인 개발자
시나리오 – 활용 예시 2 중소/영세 업체의 (예, IoT제조 업체, 중소 보안 업체 등) 신뢰 실행 환경 활용 기회 제공 일반 실행 환경 interaction 개인 신뢰 실행 환경 (PrEE) 자유로운 설치 IoT 프로그램 보안 프로그램 중소 개발 업체
관련 연구 1 . Trusted language runtime on a mobile platform (US 20120331550 A1) 마이크로 소프트 TrustZone 기반 신뢰 실행 환경에 .NET 프레임워크 설치 개발자의 자유로운 개발 환경 구성 우리 제안과의 차이점 기존의 신뢰 실행 환경에 3rd party 앱이 설치됨. 기존 신뢰 실행 환경에 이미 설치되어 있는 앱의 안전성을 위협할 수 있음. (e.g., 새롭게 설치된 앱이 악성코드인 경우 안정성을 보장할수 없음) 기존 유료 사용 개발자들의 반발 예상 기존 신뢰 실행 환경 기반 사업체 (삼성, 퀄컴 등)의 반발 예상
관련 연구 2 Virtual secure execution environments (US 9442752 B1) 아마존 가상화 기능만을 활용하여 새로운 실행 공간 생성 우리 제안과의 차이점 하드웨어 보안 기능 (TrustZone)의 연동이 고려되지 않음. TrustZone기반 고유 기술 (e.g., Trusted keypad, display)의 사용이 불가하다.
Q&A 새로운 형태의 신뢰 실행 환경 구성 및 제공 가상화 기술 기반 PrEE 구현 - 신뢰 실행 환경 연구 및 산업계 활용의 활성화에 기여 - 가상화 기능과 TrustZone의 연동을 고려