root 권한의 무제한성으로 인해, 한 번 권한이 탈취되면 시스템 전체가 장악되는 구조적 취약점이 존재함.Secure OS의 핵심은 '모든 접근을 검사한다'는 철학에 있습니다. 이를 구현하기 위해 참조 모니터(이론)와 보안 커널(구현)이 필수적입니다.
1) 참조 모니터 (Reference Monitor) - [개념/이론]
주체(Subject)가 객체(Object)에 접근하려 할 때, 보안 정책에 부합하는지 검사하는 추상적인 접근 통제 개념입니다. 다음 3대 요소(NEAT)를 반드시 만족해야 합니다.
| 요소 | 영문 | 설명 |
|---|---|---|
| 격리성 | Tamper-proof | 참조 모니터 자체는 외부의 어떤 공격으로부터도 위변조되지 않아야 함 (Isolation) |
| 검증가능성 | Verifiable | 설계와 구현이 올바른지 수학적/논리적으로 검증 가능하도록 작고 단순해야 함 |
| 완전성 | Always Invoked | 우회 불가능하며, 모든 접근 요청은 반드시 참조 모니터를 경유해야 함 (Complete Mediation) |
2) 보안 커널 (Security Kernel) - [구현/실체]
참조 모니터의 개념을 하드웨어, 펌웨어, 소프트웨어적으로 실제 구현한 TCB의 핵심 모듈입니다.
Secure OS를 제작(개발)한다는 것은 기존 OS 커널을 수정하거나 새로운 마이크로 커널을 설계하여 TCB를 구축하는 과정입니다.
1단계: 보안 정책(Policy) 모델링
보호하고자 하는 목적에 따라 수학적 보안 모델을 선정합니다.
2단계: 아키텍처 설계 (커널 구조 선정)
3단계: 식별 및 인증/접근통제 구현
root의 모든 권한을 Security Admin, System Operator, Audit Admin 등으로 분리하여 구현.4단계: 보증(Assurance) 및 평가
| 구분 | 일반 OS (General OS) | Secure OS |
|---|---|---|
| 접근 통제 | DAC (임의적 접근 통제) | MAC (강제적 접근 통제) + DAC |
| 사용자 권한 | Super User (Root) 전지전능 | RBAC (역할 기반) / 최소 권한 |
| 보안 설정 | OS 설치 후 별도 보안 SW 설치 | OS 커널 자체에 내장 (Built-in) |
| 장점 | 호환성, 고성능, 관리 편의성 | 해킹 방어력, 내부 통제, 무결성 |
| 단점 | 취약점 존재, Root 탈취 시 끝 | 성능 저하(Overhead), 관리 복잡성 |
[전문가 제언]
Secure OS는 '방화벽이나 백신이 뚫려도 시스템 최후의 보루' 역할을 수행해야 합니다. 최근 클라우드 및 컨테이너 환경(Kubernetes)으로 전환됨에 따라, 호스트 OS 레벨의 Secure OS뿐만 아니라 컨테이너 런타임 보안 및 마이크로 세그멘테이션을 결합한 심층 방어(Defense in Depth) 전략으로 발전시켜야 합니다. 특히 참조 모니터의 3요소(NEAT)는 OS뿐만 아니라 모든 보안 아키텍처의 설계 철학이 되어야 합니다.
[어린이 버전 요약]
"일반 컴퓨터는 방문증(ID)만 있으면 어디든 갈 수 있지만, Secure OS는 문지기(보안커널)가 모든 방문마다 허락된 구역인지 일일이 확인하는 아주 깐깐한 컴퓨터예요."