KINTZ: a kernel introspection infrastructure on trustZone = TrustZone기반 커널 인트로스펙션 (검수) 인프라스트럭쳐

커널의 메모리를 분리된 환경에서 인트로스펙션 (검수)하는 것은 커널 보안에 매우 중요한 기술이다. 이 분야에서는 하이퍼바이저와 외부 하드웨어를 이용한 기법이 심도 있게 진행되어 왔다. 하지만, 이러한 연구는 x86아키텍쳐 기반에 집중되어 왔으며, ARM 아키텍쳐가 널리 사용되는 모바일 디바이스에서 적용하기에는 제한점이 많다. ARM 아키텍처가 하이퍼바이저 기술을 포함하고 있다 하여도, 모바일 디바이스에 하이퍼바이저를 적용하기에는 전력소모 및 복잡한 개발과정 등으로 인해 아직 적용이 쉽지 않은 상황이다. 이러한 상황에서 모바일 디바이스는 하드웨어 성능 및 소프트웨어의 발달로 기존의PC에서 제공하는 기능을 가진 소프트웨어가 구동할 수 있게 되었다. 이러한 소프트웨어는 사용자가 항상 소지한다는 모바일 디바이스의 특성으로 인해, 금융, 위치정보 및 개인정보 등 중요한 데이터를 많이 다루게 되는데, 이는 공격자들에게 매력적인 공격 대상이 되고 있다. 그렇기 때문에 ARM 아키텍쳐 기반의 커널 보안기술은 더욱 중요해지고 있다. 본 연구에서는 모바일 환경에서 널리 사용되고 있는 ARM 프로세서에서 제공하는 TrustZone을 이용한 커널 인트로스페션 인프라스트럭쳐를 제안한다. TrustZone은 하나의 CPU 상에서 논리적으로 Normal world, 와 Secure world라는 두 개의 분리된 실행 공간을 제공하는 기술이다. 이를 위해 non-secure와 secure라는 두 개의 실행모드로 분리되었으며, 시스템 주변장치 등도 이를 인지하여 Secure world에 할당된 자원을 Normal world에서 접근하지 못하도록 하는 하드웨어적 보안기능을 제공한다. Normal world에서 커널을 포함한 시스템이 동작하고, Secure world에서 커널을 인트로스펙션하는 모듈이 존재한다면, 인트로스펙션 모듈은 Normal world의 영향을 받지 않으면서 커널의 정상성을 인트로스펙현 할 수 있게 된다. 하지만 분리된 환경에서 인트로스펙현을 할 경우에는 성능 문제와 함께 세멘틱겝 (Semantic Gap)을 발생시킨다. 세멘틱겝은 외부에서 메모리를 볼 경우 특정 물리주소 상의 값이 어떤 의미를 가지는지 알 수 없게 되는 문제를 말한다. 본 연구에서는 이 두 가지 문제를 해결하기 위한 효과적인 방법을 다음과 같이 제안한다. Dual Memory Space Addressing (DMSA) 는 ARM 에서 사용하는 Page Table Base Reg-ister (TTBR)가 두 개임을 이용하여, 첫 번째 TTBR은 Secure world의 소프트웨어의 페이지테이블을, 두 번째 TTBR은 Normal world의 페이지테이블을 가리키도록 한다. 이를 통해 Secure world에서 동작하는 인트로스펙터 모듈이 동시에 두 실행환경의 가상주소공간을 볼 수 있게 하는 기법이다. 이를 통해 불필요한 페이지 메핑의 오버헤드를 제거할 수 있고, 가상주소의 물리주소변환이 하드웨어를 통해 이뤄지게 하여 성능 개선을 이룰 수 있었다. DMSA는 성능뿐만 아니라 Secure world에서 Normal world 커널의 메모리를 동일한 가상주소로 접근할 수 있게 하는 장점을 가진다. 이를 이용하여 본 연구에서는 커널 기반으로 컴파일된 Loadable Kernel Module (LKM) 형식의 인트로스펙터 모듈을 Secure world의 주소공간에 적재시키고, 커널과 링크를 수행하는 기능을 제안한다. 이 기법을 통해 인트로스펙터 코드가 커널의 심볼을 바로 접근할 수 있게 됨으로써 개발과정을 단순화 시켰다. 또한, 불필요한 주소계산 과정이 제거됨으로 인해, 이 과정에서 수반될 수 있는 오류의 발생을 줄일 수 있었다. 본 논문은 상기의 기법을 이용하여 인트로스펙션을 수행할 경우 얻어지는 성능 상의 장점을 보여주었다. 또한 프로세스리스트, 시스템콜테이블, TCP VFS 함수포인터를 인트로스펙션하는 기능을 실험하여, 효과적으로 커널의 변조를 찾을 수 있었다.
Advisors
Kang, Brent ByungHoonresearcher강병훈researcher
Publisher
한국과학기술원
Issue Date
2015
Identifier
325007
Language
eng
Description

학위논문(석사) - 한국과학기술원 : 정보보호대학원, 2015.2 ,[v, 26 p. :]

Keywords

Kernel introspection; TrustZone; Rootkit detection; 커널 인트로스펙션; 커널 검수; 트러스트존; 루트킷 탐지

URI
http://hdl.handle.net/10203/206581
Link
http://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=608631&flag=t
Appears in Collection
IS-Theses_Master(석사논문)
Files in This Item
There are no files associated with this item.
  • Hit : 141
  • Download : 0
  • Cited 0 times in thomson ci

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0