15
Chapter 8 Authorization Access control matrix Multilevel Security Multilateral security Covert channel Inference control CAPTCHA Firewalls IDS

Chapter 8 Authorization

Embed Size (px)

DESCRIPTION

Chapter 8 Authorization. Access control matrix Multilevel Security Multilateral security Covert channel Inference control CAPTCHA Firewalls IDS. 접근 제어의 기본 개념. 접근 제어는 보호 받아야 할 시스템의 데이터와 자원에 대해서 행해지는 동작을 규제한다 . 목적 은 데이터와 자원에 손상을 입히는 동작을 규제하기 위해서 주체가 실행하는 동작을 제어하는 것이다 . - PowerPoint PPT Presentation

Citation preview

Page 1: Chapter 8 Authorization

Chapter 8Authorization

Access control matrixMultilevel Security

Multilateral securityCovert channel

Inference controlCAPTCHAFirewalls

IDS

Page 2: Chapter 8 Authorization

접근 제어의 기본 개념

접근 제어는 보호 받아야 할 시스템의 데이터와 자원에 대해서 행해지는 동작을 규제한다 .

목적은 데이터와 자원에 손상을 입히는 동작을 규제하기 위해서 주체가 실행하는 동작을 제어하는 것이다 .

operating system 와 database management system (DBMS) 의 일부로서 접근 제어의 문제를 생각해 보자 .

Chapter 8 Authorization 2

Page 3: Chapter 8 Authorization

접근 제어의 기본 개념

동작을 수행하는 주체 (subject) 와 수동적인 객체 (object) 가 있다 .

reference monitor 는 접근을 허락하거나 거부한다 .

Chapter 8 Authorization 3

주체 접근 요청

Reference monitor 객체

Page 4: Chapter 8 Authorization

접근 제어의 기본 개념

Chapter 8 Authorization 4

주체 접근요청

Reference monitor 객체

AccessPermissions

접근 제어 정책

Page 5: Chapter 8 Authorization

접근 제어 행렬(Access Control Matrix)

Chapter 8 Authorization 5

Page 6: Chapter 8 Authorization

Lampson’s Access Control Matrix 주체 ( 사용자 ) 는 열에 표시한다 . 객체 ( 자원 ) 는 행에 표시한다 .

os Accounting program

Accounting data

Insurancedata

Payrolldata

Bob rx rx r --- ---

Alice rx rx r rw rw

Sam rwx rwx r rw rwAccounting program rx rx rw rw rw

Chapter 8 Authorization 6

Page 7: Chapter 8 Authorization

어떻게 행렬을 관리하는가 ? 접근 제어 행렬은 모든 관련된 정보를 갖고 있

다 . 하지만 어떻게 커다란 행렬을 관리할 것인가 ?

수천명의 사용자와 수천개의 자원들 그러면 행렬은 수백만개의 원소를 갖는다 . 특정 자원에 접근하기 전에 이 행렬을 조사하여야

한다 : 비효율적 효율적인 사용을 위해서 , 행렬을 관리할 수

있는 부분으로 나눈다 ; 두가지 방법 : 행 (column) 으로 혹은 열 (row) 로

Chapter 8 Authorization 7

Page 8: Chapter 8 Authorization

Access Control Lists (ACLs) ACL: 행 (column) 으로 보관 예 : insurance data 에 대한 ACL

Chapter 8 Authorization

os Accounting program

Accounting data

Insurancedata

Payrolldata

Bob rx rx r --- ---

Alice rx rx r rw rw

Sam rwx rwx r rw rwAccounting

program rx rx rw rw rw

8

ACL(insurance data) = {(Bob,---), (Alice,rw), (Sam,rw), (Acc prog, rw)}

Page 9: Chapter 8 Authorization

권한 목록 (Capabilities or C-Lists) 열 (row) 로 보관 예 : Alice 에 대한 C-List

Chapter 8 Authorization

os Accounting program

Accounting data

Insurancedata

Payrolldata

Bob rx rx r --- ---Alice rx rx r rw rw

Sam rwx rwx r rw rwAccounting

program rx rx rw rw rw

9

C-list(Alice)= {(OS,rw), (Acct prog,rw), (Acct data,r), (Insur data,rw), (payroll data, rw)}

Page 10: Chapter 8 Authorization

ACLs vs Capabilities

주요 차이점은 화살표의 방향이 반대라는 점이다 ! ACL 의 경우 여전히 사용자를 파일과 연관을 시키는 것이 필요하다 .

Chapter 8 Authorization

file1Alice

Bob

Fred

r---r

wr

---

rwrr

rwrw

---rr

r---r

Access Control List Capability

10

file2

file3

Alice

Bob

Fred

file1

file2

file3

Page 11: Chapter 8 Authorization

권한 위임 혼돈 - 1/4 두 개의 자원과 한

명의 사용자 자원 : 컴파일러와

청구서 파일 (BILL) 사용자 : Alice

컴파일러는 청구서 파일에 쓸 수 있다 .

Alice 는 수정할 파일 이름을 컴파일러에게 넘겨줄 수 있다 .

Alice 는 청구서 파일에 쓸 수 없다 . Chapter 8 Authorization

Access control matrix

x ---

rx rw

Compiler BILLAlice

Compiler

11

Page 12: Chapter 8 Authorization

권한 위임 혼돈 - 2/4

컴파일러는 Alice 의 대리인으로 동작한다 . 컴파일러는 혼란스럽다 .

Alice 는 청구서 파일에 쓰는 것이 허락되지 않았다 . 컴파일러는 자신의 권한과 Alice 의 권한을 혼동하게 된다 .

Chapter 8 Authorization

Alice BILL

Compiler

수정 파일 이름

“BILL”BILL

12

Page 13: Chapter 8 Authorization

권한 위임 혼돈 - 3/4 Alice 을 대신해서 컴파일러가 행동을 할 때

자신의 권한에 따라서 행동을 하게 된다 . 하지만 그 행동은 Alice 의 권한에 따라야 한다 .

권한 (authority) 와 그것이 사용되는 목적 사이에 구분이 있다 .

ACL 은 이 문제를 피하는 것이 힘들다 . ACLs 는 권한이 위임되는 것을 표시하기 힘들다 . ACL(insurance data)

= {(Bob,---), (Alice,rw), (Sam,rw), (Acc prog, rw)}

Chapter 8 Authorization 13

Page 14: Chapter 8 Authorization

권한 위임 혼돈 - 4/4 Capabilities 는 이 문제를 쉽게 피할 수 있다 .

권한과 그것이 의도하는 목적 간의 연관성을 유지해야 한다 .

Capabilities 는 권한이 위임되는 것을 나타내기 쉽다 .

C-list(Alice)= {(OS,rw), (Acct prog,rw), (Acct data,r), (Insur data,rw), (payroll data, rw)}

Chapter 8 Authorization 14

Page 15: Chapter 8 Authorization

ACLs vs Capabilities ACLs

사용자들이 그들 자신의 파일들을 관리하는데 좋다 . 데이터 중심의 보호 자원에 대한 권리를 변경하기가 쉽다 .

Capabilities 위임 (delegation) 이 쉽다 . 사용자를 쉽게 추가 /삭제할 수 있다 . 대리 혼돈 (confused deputy) 을 피하는 것이 쉽다 . 구현하기가 더 힘들다 .

학계에서는 Capabilities 를 선호한다 .

Chapter 8 Authorization 15