1. 보안 운영체제
기존 운영체제에 보안커널을 추가로 이식해 보안기능을 구현한 운영체제
- 보호 대상
- 메모리, 파일, 디렉토리, 실행 중인 프로그램, 하드웨어 장치 등
- 보호 방법
- 물리적 분리: 별도의 장비만 사용하도록 제한
- 시간적 분리: 프로세스가 동일 시간에 하나씩만 실행되도록 제한
- 논리적 분리: 각 프로세스의 논리적 구역을 지정
- 암호적 분리: 내부의 정보를 암호화
- 파일시스템 보호
- 명명: 알아내기 어려운 이름을 쓰는 것, 하지만 추측에 의한 발각이 쉬움
- 패스워드: 사용자마다 서로 다른 패스워드 제공
- 암호화: 파일 내용 자체를 암호화해 인가된 사용자만 알 수 있도록 하는 것
2. 보안 운영체제와 보안 커널
2-1. 보안 운영체제의 기능
- 사용자 식별 및 인증
- 임의적, 강제적 접근 통제: 신분 혹은 규칙에 기반에 접근 제어
- 객체 재사용 보호: 이전 데이터가 삭제되지 않아 비밀 데이터가 노출되는 것을 방지
- 완전한 조정: 모든 접근을 통제
- 신뢰 경로 제공
- 감사 및 감사 기록 축소
2-2. 보안커널 (Security Kernel)
참조 모니터를 구현하고 집행하여 주체와 객체 사이의 모든 접근을 중재함
TCB 내의 HW, SW, FW로 구성
- 보안커널의 요구사항
- 격리성: 프로세스를 분리하고, 부정 조작을 방지
- 완전성: 모든 접근 시도에 대해 실행되고, 우회가 불가능
- 검증 가능성: 충분히 시험되고 확인되어야 함
- 신뢰 컴퓨팅 기반 (TCB, Trusted Computing Base)
- 컴퓨터 시스템의 모든 보호 메커니즘의 총제
- 국제 공통 평가 기준(CC)에 의해 평가됨
- 보안 경계: 신뢰, 비신뢰 구성요소의 개념적인 가상의 경계선
- 참조 모니터 (Reference Monitor)
- 주체와 객체의 모든 접근통제를 담당하는 추상머신
- 규칙
- 부정조작이 없어야 함
- 항상 호출되어야 함
- 모든 동작을 분석과 테스트로 확인 가능해야 함
3. 신뢰 플랫폼 모듈 (TPM, Trusted Platform Module)
신뢰 컴퓨팅의 가장 하위에 위치한 하드웨어 모듈
- 특징
- 대개 훼손 방지를 위해 하드웨어칩으로 구현됨
- 신뢰 연산: 암호화 키 생성과 저장, 패스워드 저장, 무결성 검증을 위한 측정값 저장, 디지털 인증서 연산 등
- 서비스
- 인증된 부트 서비스: 운영체제의 각 부분이 승인된 버전임을 보장
- 인증 서비스: TPM의 사설키로 설정 정보에 서명하고 인증
- 암호화 서비스
- 구성 요소
- I/O, 암호화 보조 프로세서, 키 생성, RNG, SHA-1 엔진, 실행 엔진
- HMAC 엔진: 인증 프로토콜에 사용됨
- 전원 탐지: TPM과 플랫폼 전원 상태 관리
- Opt-in: TPM 활성화 및 비활성화 메커니즘 제공
- 비휘발성 메모리: 신원, 상태 인자 저장
- 휘발성 메모리: 실행 함수를 위한 임시 인자 저장