보안 운영체제
Secure OS
[정리]
[1] 보안 운영체제
1. 개념
2. 기능
3. 참조모니터, 보안커널, TCB 관계
4. TPM
[1] 보안 운영체제
1. 보안 운영체제 개념
: 운영체제에서 보안이란 자원에 대한 불법적인 수정이나 참조를 방지하는 정백과 기법 모두를 일컫는 용어.
: 각종 해킹으로부터 시스템을 보호하기 위해 기존의 운영체제 내에 보안 기능을 통합시킨 보안커널을 추가로 이식한 운영체제
보안강화 방법으로
1) Add-On 방식 : 기존 운영체제에서 커널 수정없이 유틸리티 수준에서 보안기능(암호화, 접근제어, 감사추적 등)을 하는 Hw, sw를 추가하는 방식
2) 커널수준 보안 방식 : 운영체제 내의 커널을 수정하거나 새로 설계하는 방법
2. 보안 운영체제 기능
보안 운영체제내 보호 대상 및 보호 방법
1) 보호 대상
: 메모리, 보조기억장치 데이터, 프로세스, 디렉터리, 하드웨어 장치, 스택 같은 자료구조, 명령어, 등
2) 보호 방법
구현 복잡도가 높은 순서대로 나열. 조합되어 운영할 수 있다.
물리적 분리: 사용자 별로 별도의 장비를 사용한다.
시간적 분리: 프로세스가 동일 시간에 하나씩만 실행되도록 한다.
논리적 분리: 각 프로세스에 논리적인 구역을 지정한다.
암호적 분리: 내부에서 사용되는 정보를 외부에서 알 수 없도록 암호화한다.
3) 파일 시스템 보호
파일 소유자가 보호장치를 만들어 놓은 것이다.
파일의 보호는 파일의 공용 문제와 병행하여 고려해야 한다. (보호 시 자원의 낭비 방지)
- 파일의 이름 명명 (naming), 패스워드 (password), 암호화
보안 기능
1) 사용자 식별 및 인증
개별 사용자들의 안전한 식별을 요구하며, 각각의 사용자들은 고유하게 식별될 수 있어야 한다.
2) 임의적/강제적 통제 (DAC, MAC)
-사용자들을 임의적 또는 강제적 통제 방법을 사용한다.
3) 객체 재사용 보호
사용자가 파일을 생성 후 삭제 시 파일의 내용이 운영체제에 남아있지 않도록 설정한다.
4) 완전한 조정
임의적/강제적 통제가 효과적이기 위해서는 모든 접근을 통제해야 한다.
5) 신뢰 경로
패스워드 설정, 정책 설정 시 신뢰 경로를 통한 통신이 이루어지게 한다.
6) 감사 및 감사 기록 축소
모든 보안 관련 사건은 감사 기록부(audit log)에 기록 되어야 하고 명백하게 보호되어야 한다.
3. 참조모니터, 보안커널, TCB 관계
참조모니터가 추상적인 개념이고, 보안커널이 그 개념을 물리적으로 구현한 것이다. TCB는 이러한 보안커널들로 이루어진 보안 매커니즘의 총체이다.
1) 참조 모니터(Reference Monitor)
컴퓨터 하드웨어와 운영체제에 있는 제어 요소
주체(사용자)와 객체(파일, 디렉터리, 디바이스 등) 사이의 모든 접근통제를 중재한다. (추상적인 개념)
보안 커널과 보안커널 데이터베이스(SKDB,Security Kernel Database)를 참조하여 객체에 대한 접근허가 여부를 결정한다.
※ 3가지 요소※
① 격리성(Isolation): 반드시 부정 조작(temper proof)이 없어야 한다.
② 완전성(Completeness): 항상 무시되지 않고 호출되어야 한다. 위회불가능, invoke
③ 검증 가능성(simple, small, understandable): 모든 동작을 분석과 테스트를 할 정도로 충분히 작아야함.
2) 신뢰 컴퓨터 기반 (TCB, Trust Computing Base)
하나의 컴퓨터 시스템 (하드웨어, 소프트웨어, 펌웨어) 내의 모든 보호 메커니즘의 총체이다.
프로세스 활성화, 실행 도메인 변경, 메모리 보호, 입출력 연산의 4가지 모니터 기능을 수행한다.
TCSEC/ Orange Book과 같은 신뢰 기반
3) 보안커널
Reference Monitor 개념을 실제적으로 구현한 TCB의 H/W, S/W, F/W 요소이며, 모든 접근을 중재하며 수정으로부터 보호되고 정확성이 검증되어야 한다.
4. 신뢰 플랫폼 모듈 (TPM, Trust Platform Module)
1) TPM 기본 개념
- 암호화된 키, 패스워드, 디지털 인증서 등을 저장하는 안전한 저장 공간을 제공하는 보안 모듈
- 신뢰 컴퓨팅 기반의 가장 하위에 위치해 있다. (하드웨어 모듈)
일반적으로 개인용 컴퓨터(PC) 주기판에 부착되며, 부팅 단계에서부터 시스템의 무결성 검증에 이용된다.
주요 데이터가 하드웨어에 저장되기 때문에 외부 소프트웨어 공격이나 물리적인 도난에 대해 더 안전하다.
하드웨어 기반의 난수(random number) 생성, 표준 알고리즘(SHA-1, RSA, HMAC 등) 제공, 안전한 키 생성 및 보관, 암호 처리를 위한 프로세서 및 정보 저장을 위한 플랫폼 구성 레지스터(PCR: Platform Configuration Register) 및 비휘발성 메모리 등으로 구성되어 있다.
이동용 신뢰 플랫폼 모듈(TPM)로 모바일 신뢰 보안 모듈(MTM: Mobile Trusted Module)이 있다.
2) 특징
- 훼손 방지 때문에 주로 하드웨어로 구현되나 소프트웨어도 존재
- 물리적인 도난의 경우에도 정보의 노출이 어려움.
3) 기본 서비스
① 인증된 부트 서비스
- 전체 운영체제를 단계적으로 부팅하고, 운영체제가 적재될 때 운영체제의 각 부분이 사용을 위해 승인된 버전임을 보장한다.
② 인증 서비스
- TPM에 의해 완성되고 로그인되면 다른 부분의 설정을 인증할 수 있다. (개인키를 이용해 디지털인증도 가능)
③ 암호화 서비스
- 특정 기계가 특정 설정으로 되어 있을 때만 그 기계에서 데이터의 복호화를 수행하는 방식으로 데이터 암호화를 지원한다.