다양한 기록

인증과 인가 본문

정보보호이론

인증과 인가

라구넹 2024. 12. 15. 20:16

사용자가 정보 자원에 접근하기 위해서는..

 

> 1단계, 식별(Identifiaction) .. 인증 받으려고 하는 사람이 누구인가?

- 주체가 본인임을 주장, ID등을 이용해서 본인의 신원을 주장

 

> 2단계, 인증(Authentication) .. 인증 받으려는 사람이 진짜 그 사람인가?

- 주체가 자신이 주장한 신원임을 증명(개체 인증), 어떠한 자원을 사용하려는 주체의 신원을 식별

 

> 3단계, 인가(Authorization) .. 이 자원을 사용할 수 있는 사람인가?

- 인증을 획득한 주체가 자원에 접근하여 원하는 작업을 할 수 있는 권한이 있는지 확인


인증(Authentication)

- 개체인증, 메시지 인증

메시지 인증은 암호학적 해시 함수, 대칭키로 특정 데이터의 무결성 보장을 위해 사용

 

개체 인증은?

- 개체의 신원을 증명하기 위한 일련의 과정, 일반적이나 사람이나 기기

- 주장자(Claimant) : 자신의 신원을 증명하고자 하는 주체

- 검증자(Verifier) : 요구자의 신원을 증명하기 위해 노력하는 개체

 

개체 인증에 사용되는 속성

1. 알고 있는 것(something known, 인식 기반)

- 주장자만 알고 있는 비밀

 

2. 소유하고 있는 것(something possessed, 소유 기반)

- 주장자의 신원을 증명할 수 있는 어떤 대상

 

3. 태생적으로 가지고 있는 것(something inherent, 신체 특징 기반)

- 주장자의 타고난 특성


알고 있는 것(something known, 인식 기반)

패스워드 기반 인증: 가장 오랫동안 사용한 개체 인증 방법

- 고정된 패스워드

- 해쉬된 패스워드

- 솔트 사용 패스워드

 

고정된 패스워드

- 서버의 테이블에 패스워드를 그대로 저장해 비교 .. 테이블 외부 유출 시 모든 사용자의 패스워드 노출

 

해쉬된 패스워드

- 서버의 테이블이 노출되어도 해쉬 값의 역상을 알아야 공격 가능

- 전수조사 공격과 사전 공격에 취약할 수 있음

* SHA-3 입력값을 미리 전수조사 테이블 만들기도 가능

 

솔트 사용 패스워드

- 해쉬의 입력값을 증가시켜 전수조사를 어렵게 만듦

 

소유하고 있는 것(something possessed, 소유 기반)

- 패스포트, 운전면허증, 신분증, 신용카드, 스마트카드 등

 

태생적으로 가지고 있는 것(something inherent, 신체 특징 기반)

- FIDO(Fast Identoty Online): 현재의 아이디, 비밀번호 방식 대신 지문 인식, 홍채 인식 혹은 얼굴 인증 등의 다양한 생체 인식 기반의 개체 인증 시스템


인가

- 주체가 하고자 하는 작업이 해당 주체에게 허가된 작업인지 확인, 권한 부여, 접근 제어

- 일반적으로 인증을 거친 후 인증된 사용자에 대한 특정 권한을 부여(ex. ACL)

 

접근제어의 요소

- 주체(Subject): 사용자, 프로세스

- 객체(Object): 파일(레코드, 필드), 데이터베이스(테이블, 뷰), 프로그램

- 접근(Access): read, write, update, delete, excute ..

- 접근 제어(Access Control): 주체가 객체에 접근을 요구했을 때 이 요구를 수락할지 거절할지 결정하는 행위

 

접근 통제 기술 설명
접근 제어 리스트 (ACL, Access Control List) 사용자 또는 자원 중심의 접근 통제 목록을 작성하여 접근 제어 시 목록을 비교하여 접근 통제
접근 제어 표(ACM, Access Control Matrix) 자원 중심의 접근 통제 표를 작성하여 접근 제어 시 표와 비교하여 접근 통제
강제적 접근 제어 (MAC, Mandatory Access Control) 사용자와 자원에 적절한 보안등급(레이블)을 부여하여 접근 제어 시 등급을 비교하여 접근 통제
역할 기반 접근 제어 (RBAC, Role Base Access Control) 사용자에게 역할을 부여하고 각 역할 별로 권한을 부여하여 접근 통제

 

 

접근 제어 리스트 (ACL, Access Control List)

Alice 급여정보
[R, W]
주소정보
[R]
 
Bob 급여정보
[R]
인사기록
[R, W]
주소정보
[R]
Eve   인사기록
[R, ]
주소정보
[R, W]

 

 

접근 제어 표(ACM, Access Control Matrix)

  급여 정보 인사기록 주소정보
Alice R, W   R
Bob R R, W R
Eve     R, W

 

* ACL이나 ACM은 주체나 객체의 수가 너무 많으면 접근 제어 정보를 관리하기 매우 힘들어짐

 

ACM(ACL)을 이용한 접근 제어의 예

- 일반적으로 서버급 OS에서는 접근제어 리스트 사용

- 접근제어 리스트의 약점을 보완하기 위해 그룹 개념을 추가

- 비슷한 성격의 사용자들을 하나로 묶어서 그룹으로 지정하고, 개발 사용자에게 권한을 부여하는 대신 그룹에 권한 지정


강제적 접근 제어 (MAC, Mandatory Access Control)

- 주체와 객체에 적절한 보안 등급(레이블)을 부여하고 접근 제어 시 이 등급을 비교

- 주로 군사 환경과 같은 엄격한 보안이 요구되는 분야에 적합

- 보안 레이블: 컴퓨터 안에 존재하는 개체들이 얼마나 보안상 중요한가를 나타내는 속성

ex: Top Secret / Secret / Confidential / Unclassified

ex: Restricted / Proprietary / Sensitive / Public

 

BLP(Bell-LaPadula) 규칙 : No read up / No write down

자기보다 높은 수준의 레이블을 가지는 개체를 읽지 못하고, 낮은 수준의 레이블을 가지는 개체에 쓰지 못함

- 높은 보안 수준을 가지는 정보가 낮은 보안 수준을 지닌 곳으로 전이되지 않도록 하기 위험


역할 기반 접근 제어 (RBAC, Role Base Access Control)

- 기업 환경으로부터 아이디어가 만들어짐

- 사용자가 어떤 역할을 수행하고 있는지에 따라 권한이 정해짐

'정보보호이론' 카테고리의 다른 글

기타 정보보호 이슈  (0) 2024.12.17
키 관리  (0) 2024.12.16
공개키 암호  (0) 2024.12.15
해시 함수, 공격, 응용, MAC  (0) 2024.10.28
블록 암호 - 운용모드  (0) 2024.10.28