트러스트 존

트러스트 존 소개

  • Arm에서 제공하는 시큐리티 기능이자 소프트웨어 아키텍쳐
  • 대부분 Arm 프로세서에 적용되는 기술(휴대폰100%)

트러스트 존 정의

  • CPU 내부에 보안 관점으로 소프트웨어 및 하드웨어적으로 신뢰할 수 있는 실행 영역을 제공하자.

ex) 인터넷뱅킹 어플 실행시
1) 커널에서 SMC 명령 실행
2) EL3로 진입 이후 트러스티드 커널로 진입.
3) 시큐어 상태에서만 접근 가능한 상태에서 비밀번호 등등
4) 실행후 다시 트러스티드 커널에서 smc명령어 실행, 시큐어 모니터 진입
5) 시큐어 모니터 -> EL1의 커널

트러스트 존 하드웨어 기능

  • Security Extension

    • Arm Core 내부의 시큐어 월드를 분리
  • GIC : GENERIC INTERRUPT CONTROLLER

    • 외부 페리페럴 인터럽트를 Arm 코어로 라우팅
    • 인터럽트를 논 시큐어와 시큐어로 구분해 라우팅
  • TZASC : Trust Zone Address Space Controller

    • DRAM에 지정한 영역을 시큐어 영역으로 만들고 논 시큐어 접근을 필터링
  • TZPC : TrustZone Program Controller

    • CPU가 아닌 HW 마스터의 레지스터나 메모리에 접근할 때에 시큐어와 논 시큐어를 분리
  • TZMA : TrustZone Memory Adapter

    • 칩셋 내부의 메모리 영역을 시큐어와 논 시큐어로 구분

하이퍼 바이저

하이퍼 바이저 소개

하이퍼 바이저란?

  • 2개 이상의 운영체제를 동시에 실행할 수 있는 아키텍처 혹은 플랫폼
  • 가상 컴퓨터 기법으로 x86 계통의 CPU에서 꾸준히 개발됨

익셉션 모델 : 어보트,IRQ

어보트,IRQ에서는 EL1의 핸들러로 점프하는것이 아닌 EL2로 간다.
게스트 OS가 모르게 하이퍼바이저가 실행흐름을 캐치한다.

가상화 대상

  • VCPU, VIRQ, Virtual MMU

관련 레지스터

  • HCR_EL2, SCR_EL3

0개의 댓글