어제 모처럼 운동화를 빨아서 배란다에 널었는데 아침에 눈을 뜨니 비가-_-
화딱지나서 옮기지도 않고 그냥 두었네요...
어쨌든 오늘은 접근 통제(Access Control)에 대해 학습해보도록 하겠습니다
접근 통제는 정당한 사용자에게는 권한을 부여하고 그 외의 다른 사용자는 거부하는 것을 말하는데요
여기서 접근(Access)은 주체와 객체의 정보 흐름을 의미합니다
주체는 자원의 접근을 요구하는 활동 개체(사람, 프로그램, 프로세스 등)를 말하고
객체는 자원을 가진 수동적인 개체(Database, 컴퓨터, 파일 등)을 말합니다
접근이 이 두개의 정보 흐름이라고 말하듯이 그 흐름의 단계를 살펴보면 다음과 같습니다
단계 | 내용 |
식별(Identification) | 사용자가 시스템에 본인이 누구라는 것을 밝히는 것으로 Unique해야 하며, 책임 추적성 분석의 기초가 됨 (ex)ID |
인증(Authentication) | 사용자가 맞음을 시스템이 검증하고 인정 (ex)Password, 생체인증, 스마트 카드 등 |
인가(Authorization) | 접근 권한 유무 판별 후 접근 권한 부여 |
통제의 주된 활동은 비인가된 접근 감시하고 접근을 요구하는 이용자를 식별하며 정당한 이용인지를 확인하는 것이고
이런 활동의 목적은 주체의 접근으로부터 객체의 기밀성, 무결성, 가용성을 보장하는데에 있습니다
접근 통제는 업무 수행에 꼭 필요한 권한만 가지도록 하고(Need to Know)
최소한의 권한만을 허용하여 권한의 남용을 방지(Least Privileage Policy)하고
업무의 발생, 승인, 변경, 확인, 배포 등이 한 사람에 의해 처리되지 않도록
직무를 분리하는 것(Separation of Duty)을 원칙으로 합니다
그럼 접근 통제를 위해 실제로 어떤 기술 정책이 쓰이는지 알아보겠습니다
먼저 강제적 접근 통제(MAC:Mandatory Access Control)이 있습니다
주체의 객체에 대한 접근이 주체의 비밀 취급 인가 레이블(Clearance label) 및
객체의 민감도 레이블(Sensitivity label)에 따라 지정되는 방식으로 관리자에 의해서 권한이 할당되고 해제됩니다
MAC은 데이터에 대한 접근을 정해진 Rule에 의해 시스템이 결정하고
데이터 소유자가 아닌 오직 관리자만이 자원의 카테고리를 변경시킬 수 있으며
비밀성을 포함하고 있는 객체에 대해 주체가 가지고 있는 권한에 근거하여 객체의 접근을 제한합니다
MAC의 종류를 살펴보면 다음과 같습니다
종류 | 설명 |
Rule-based MAC | 주체와 객체의 특성에 관계된 특정 규칙에 따른 접근 통제 |
Administratively-directed MAC | 객체에 접근할 수 있는 시스템 관리자에 의한 통제 |
CBP (Compartment-Based Policy) |
· 일련의 객체 집합을 다른 객체들과 분리 · 동일 수준의 접근허가를 갖는 부서라도 다른 보안 등급을 가질 수 있음 |
MLP (Muti-Level Policy) |
· Top Secret, Secret, Confientiality, Unclassified와 같이 각 객체별로 지정된 허용 등급을 할당하여 운영 · 미국 국방성 컴퓨터 보안 평가 지표에 사용, BLP 수학적 모델로 표현 가능 |
다음으로 자율적 접근 통제(DAC:Discretionary Access Control)는
접근하려는 객체의 소유자가 사용자에 대한 권한을 추가 및 삭제할 수 있고
접근 통제 목록(ACL:Access Control List)를 사용합니다
DAC의 종류를 살펴보면 다음과 같습니다
종류 | 설명 |
Identity-based DAC | 주체와 객체의 ID에 따른 접근 통제, 주로 유닉스에서 사용 |
User-directed | 객체 소유자가 접근 권한을 설정 및 변경할 수 있는 방식 |
한편 Non-DAC도 있는데 주체의 역할에 따라 접근할 수 있는 객체를 지정하는 방식으로
기업 내 개인의 작은 이동 및 조직 특성에 밀접하게 적용하기 위한 통제 방식입니다
중앙 관리자에 의해 접근 규칙을 지정(Central authority)합니다
Non-DAC의 종류는 다음과 같습니다
종류 | 설명 |
RBAC(Role-Based Access Control) |
· 권한들의 묶음으로 Role을 만들어서 사용자에게 Role 단위로 권한을 할당하고 관리 · 사용자의 역할에 의해 권한이 부여되어 사용자가 적절한 역할에 할당되고 역할에 적합한 권한이 할당된 경우만 사용자가 특정한 모드로 정보에 대한 접근을 통제할 수 있는 방법 · 관리가 수월해지고 보안 관리가 단순해지며 최소 권한만을 허용하여 권한의 남용을 방지 · 직무 분리를 통해 시스템 상에서 오용을 일으킬 정도의 충분한 특권이 사용된 사용자를 없게 한다 |
Lattice-Based Non-DAC |
· 역할에 할당된 민감도 레벨에 의해 결정되고 관련된 정보로만 접근이 가능 · 주체와 객체의 관계에 의거하여 접근을 통제할 수 있는 Upper bound와 Low bound를 설정하여 제어하는 방식, 정보의 흐름을 통제 |
Task-based Non-DAC |
· 조직 내 개인의 임무에 의한 접근 통제 |
다음은 접근 통제 방법에 대해 알아보겠습니다
CL(Capability List)은 주체별로 객체를 링크드리스트(Linked List)로 연결하고 권한을 할당한 구조이고
ACL(Access Control List)은 주체와 객체간의 접근 권한을 테이블로 구성한 것으로 행에는 주체, 열에는 객체를 두어
행과 열의 교차점에는 접근 권한을 기술하여 이름 기반으로 제어하는 방식입니다
또 내용 의존 접근 통제(CDAC:Content Dependent Access Control)은 접근 제어가 내용에 의해 이루어지는 접근 통제를 수행하며
제한적 인터페이스(Restricted Interface, Constricted User Interface)는 특정 기능이나 자원에 대한
접근 권한이 없을 경우 아예 접근을 요청하지 못하도록 하는 것입니다
마지막으로 접근 통제 모델(Access Control Model) 3가지(Bell-Lapadula, Biba, Clark and Wilson) 대해 알아보고 마치겠습니다
Bell-Lapadula 모델은 기밀성 모델로서 높은 등급의 정보가 낮은 레벨로 유출되는 것을 통제하는 모델입니다
정보 구분을 Top Secret, Secret, Unclassified로 하며
최초의 수학적 모델로 보안 등급과 범주를 이용한 강제적 정책에 접근 통제 모델입니다
미 국방성(DOD)의 지원을 받아서 설계된 모델이며 오렌지북인 TCSEC의 근간이 되었다고 하네요
단계 등급별로 구분지어보면 다음과 같습니다
Level |
No Read-UP(NRU or ss-property) 읽기 권한(Read Access) |
No Write-Down(NWD or *-property) = Confinement property 쓰기 권한(Write Access) |
String *-property |
높은 등급 | 통제 | 가능(OK Write Up) | 통제 |
같은 등급 | 가능 | 가능 | 가능 |
낮은 등급 | 가능(OK Read Down) | 통제 | 통제 |
Biba 모델은 Bell-Lapadula 모델의 단점인 무결성을 보장할 수 있는 모델로
주체에 의한 객체 접근의 항목으로 무결성을 다룹니다
단계 등급별로 구분지어보면 다음과 같습니다
Level |
No Read Down(NRD or Simple Integrity Axiom) 읽기 권한(Read Access) |
No Write Up(NWU or *Integrity Axiom) 쓰기 권한(Write Access) |
높은 등급 | 가능(OK Read Up) | 통제 |
같은 등급 | 가능 | 가능 |
낮은 등급 | 통제 | 가능(OK Write Down) |
마지막으로 Clark and Wilson 모델은 2가지 무결성(시스템이 이용하는 내부 일관성과 감사에 활용하는 외부 일관성)을
정의하여 Application의 보안 요구사항을 다루는데 주체와 객체 사이에 프로그램이 존재해서
객체는 항상 프로그램을 통해서만 접근이 가능한 모델입니다
참고로 만리장성 모델(Chinese Wall = Brewer-Nash)은
서로 상충 관계에 있는 객체 간의 정보 접근을 통제하는 모델로 상업적으로 기밀성 정책에 따릅니다
이것으로 오늘의 학습을 마치도록 하겠습니다
그럼 이만-_-
'Security' 카테고리의 다른 글
[Security] 키 분배 프로토콜 (0) | 2020.02.25 |
---|---|
[Security] 보안 운영체제(Secure OS) (0) | 2020.02.25 |
[Security] 사용자 인증 방식 및 원리 (0) | 2020.02.23 |
[Security] 정보 보호 개요 (0) | 2020.02.23 |
[Security] 서비스 거부 공격(DoS : Denial of Service)_4 (0) | 2020.02.18 |