- Today
- Total
프로그래밍 농장
네트워크 설계 [사용자 인증] 본문
- 접근통제 ( Access control )
: 객체(Object) : 접근 대상 ( 시스템, 서비스 )
: 주체(Subject) : 객체나 객체 내의 데이터에 대한 접근을 요청/시도하는 개체
: 접근(Access) : 주체의 객체에 대한 활동
접근통제의 개념 : 주체(외부에서 접근하는 사람, 시스템)가 접근 대상이 되는 객체(시스템)에 접근할 떄 보안상의 위협, 변조 등과 같은 위험으로부터 객체와 제반 환경을 보호하기 위한 보안대책
- 접근통제/접근제어 (Access control)의 4단계 절차
1단계 : 식별 (Identification) : 매칭작업 (사용자이름, 계정번호 . .) : 접근하려는 주체의 신원을 분별하는 단계
2단계 : 인증 (Authentication) : 검증작업(패스워드, 스마트카드 . .) : 식별된 주체의 신원을 검증/증명하는 단계
3단계 : 인가 (Authorization) : 접근허용범위 확인(ACL, 보안등급. .) : 인증된 주체의 활동범위(접근허용) 부여 단계
4단계 : 책임추적(=감사) (Audit) : 사후추적 : 인가된 주체가 시스템에 어떤 행위를 했는지에 대한 감사 단계
- 접근통제/접근제어 (Access control)의 기본 원칙
- 직무 분리 (Separation of duty, SoD)
: 업무의 발생, 승인, 수정, 확인, 완료 등이 처음부터 끝까지 한 사람에 의해 처리될 수 없게 하는 보안 정책
-> 위를 어길시 Collision 의 문제가 생길수있다
-> 공모에 대한 대응 방안
-> 보안 <->감사 , 개발 <-> 운영
- 최소 권한 (Least privilege policy)
: 허가 받은 일을 수행하기 위한 최소 권한만을 부여
- 사용자 인증
인증에는 아래와 같이 사용자(user)인증 & 메시지(message)인증 이 있다.
- 사용자 인증 vs 메시지 인증
사용자 인증(user authentication) | 메시지 인증(message authentication) | |
인증 대상 | 식별 정보 | 메시지 |
인증 시각 | 실시간 처리 | 실시간처리+지연처리 가능 |
인증 반복 | 세션 당 1회 인증 | 세션에서 교환되는 모든 메시지 인증 |
- 사용자 인증 유형
분류 | 설명 | 예 |
지식 | 주체가 그가 알고 있는 것을 보여줌 | 패스워드, PIN |
소유 | 주체가 그가 가지고 있는 것을 보여줌 | 스마트카드, OTP |
존재 / 특징 / 생체 | 주체는 그를 나타내는 것을 보여줌 | 생체인증 |
행위 | 주체는 그가 하는 것을 보여줌 | 서명 |
Two Factor | 위 4가지 중 2개 인증 매커니즘을 결합 | OTP + PIN |
Multi Factor | 위 4가지 중 3개 이상을 결합 | OTP + PIN + 지문인식 |
1. 지식 기반 사용자 인증 : What you know
지식기반의 보안성은 비밀번호의 길이 & 랜덤성 에 의존한다.
- 종류
패스워드
- 고정된 패스워드 : 패스워드를 그대로 저장하지 않고, 패스워드의 해쉬값을 저장/관리
: 사전 공격에 대응하기 위한 salt 값을 사용
- 일회용 패스워드
: 도청/도난에 대하여 고정된 패스워드보다 더 안전함
: 동기식/비동기식
- 영지식 인증 (zero-knowledge proof)
: 주체는 객체에게 자신의 비밀을 노출하지 않으면서 그 비밀을 알고 있다는 사실만을 증명
: Fiat-Shamir 프로토콜 / Feige-Fiat-Shamir 프로토콜 / Guiliou-Quisquater 프로토콜
- 패스워드 보안 정책
1. 패스워드 생성 정책 : 최소 8자리 이상의 문자 사용
: 4가지 유형의 문자 (대/소문자, 숫자, 특수문자)를 조합하여 구성
: 쉽게 예측 가능한 문자 사용 금지 ex) 연속된숫자, 생년월일, 전화번호, 사전에 나온 단어
2. 패스워드 갱신/변경 정책 : 주기적인 패스워드 갱신
: 패스워드 구성
: 동일한 패스워드를 재사용 금지
3. 로그인 실패 횟수를 제한하도록 임계치를 설정
4. 패스워드 저장 시 일방향 암호화 알고리즘 사용
- i-PIN ( Internet Personal Identification Number)
- 인터넷 상에서 주민등록번호를 대신하여 아이디와 패스워드를 이용하여 본인 확인하는 수단
- 주민등록번호 유출 예방
- 2015년 3월 해킹 발생
2. 소유 기반 사용자 인증
종류
- 메모리 카드(토큰)
- 스마트 카드 ( ISO 7816, 부채널 공격 )
- 일회용 패스워드 ( OTP, one-time password )
: 비동기식
: 동기식 ( 시간방식, 계수기방식)
3. 개체특성 기반 사용자 인증
지문, 손바닥, 망막 등 . .
-> CER (Crossover Error Rate), '교차 오류율'
False positive냐, False negative냐의 문제 -> 이 둘이 교차하는 점이 교차 오류율이다.
-> AI의 경우 한정된 입력값에 의한 판단의 오류율이 존재할수있다.
통합 인증 체계
- SSO ( Single Sign ON ) : 한번의 시스템 인증을 통하여 접근하고자 하는 다양한 정보 시스템에 재인증 절차없이 접근할 수 있도록 하는 통합 로그인 솔루션
: 인증에 관련된 기능만 제공
커버로스: 티켓 기반 인증 프로토콜
구성/KDC
① 인증서버(AS, Authentication server)
② 발급서버 (TGS, Ticket granting server)
단점
① 서비스의 가용성은 보호하지 않는다
② KDC가 단일실패(Single Point Of Failure: SPOF) 지점이 될 수 있다
③ KDC는 패스워드 추측 공격에 취약하다
④ 네트워크 트래픽은 커버로스에 의해 보호 받지 못한다
⑤ 사용자가 자신의 패스워드를 변경하면 개인키가 변경된다.
└ 개인 패스워드 > kpw 생성, 개인키 = CBC-MAC(Kpw, PW)
- 접근통제모델
■ 강제적 접근 통제 [MAC: Mandatory Access Control] : 정부기관 등 중요한 부분에 사용
MAC
M: medium access control
A: message auth code
C: mandatory access control
객체에 대한 주체의 권한을 근거로 접근을 통제:
객체가 얼마나 민감하고 중요한지를 나타내는 보안라벨과 어떤 주체가 특정 객체에 접근 가능한지를 나타내는 보안 허가증을 비교한다.
① 객체 및 주체의 등급은 관리자만이 설정/변경할 수 있다
② 매우 엄격한 보안 적용
③ 중앙 집중식 관리
ex) 벨라파둘라 (Bell-Lapadula) 모델 : 강제적 접근 모델의 대표적인 예
■ 임의적 접근 통제 [DAC: Discretionary Access Control] : 유무선 공유기 등에서 사용. .
주체의 신원과 객체에 대한 접근 규칙을 근거로 접근 통제
ACL (Acess Control List : 접근 제어 리스트) 사용하여 구현
① 객체의 소유자가 접근 여부를 결정할 수 있다
② 하나의 주체가 복수의 객체에 접근하려 할 때, 각각의 객체에 대한 접근 권한을 부여 받아야 한다
■ 역할기반 접근 통제 [RBAC: Role Based Access Control]
역할을 설정하고, 관리자는 주체의 역할을 할당하고, 객체마다 접근 가능한 역할이 지정된다
임의적 접근 통제 방식의 단점과 강제적 접근 통제 방식의 단점을 보완했다
주체의 인사이동이 잦은 조직에 적합하다 (ex. 직급별 . .)
① Role based model: 조직에서의 내 역할에 의한 설정
② Task based model: 조직에서의 임무에 의한 설정
③ Lattice based model: 주체와 객체의 관계에 의거하여 접근 가능한 upper bound/lower bound(Lattice)를 설정하여 접근 제어
■ 보안모델
벨라파둘라 모델 [BLP: Bell LaPadula Confidentiality Model] : 기밀성 강조
- 기밀성을 강조한 모델 ( 감추는것이 중요(못보게) )
- 주체는 보안허가(security clearance)를 가지고 객체는 보안분류(security classification)를 갖는다.
- MAC 시스템 벨라파둘라 모델을 근간으로 한다
- 접근모드
① 읽기: 주체는 객체에 대해 오직 읽기 접근만을 허용한다
② 추가: 주체는 객체에 대해 오직 쓰기 접근만을 허용한다
③ 쓰기: 주체는 객체에 대해 읽기와 쓰기 접근이 허용된다
④ 실행: 주체는 객체에 대해 읽기/쓰기 접근이 허용되지 않으며 실행을 위해 객체를 호출할 수 있다
- 준수사항
① no read up: 주체는 같거나 낮은 보안 수준의 객체만을 읽을 수 있다. (말 그대로 본인보다 높은등급을 볼수없다)
② no write down: 주체는 같거나 높은 보안 수준의 객체만을 쓸 수 있다. (본인보다 낮은 등급을 쓸수없다/ 내멋대로X )
비바 무결성 보델 [Biba Integrity Model] : 무결성을 강조
- 무결성을 위한 상업용 모델 > 비인가자들의 데이터 변형 방지만을 취급 (문서의 데이터 변형을 방지)
- 비인가자가 수정하는 것을 방지
- 내/외부 일관성 유지(정확한 트랜잭션)
- 합법적인 사람이 불법적인 수정을 방지(직무분리)
- 접근 모드
① 변경: 객체에 있는 정보를 쓰거나 갱신
② 관찰: 객체의 경로를 읽기
③ 실행: 객체를 실행
④ 호출: 한 주체에서 다른 주체로 통신
- 운영/정책
① 단순 무결성 (no read down): I(S) >= I(O)
- 주체의 무결성 수준이 객체의 무결성 수준보다 우세할 때 객체로부터 데이터를 읽을 수 없다.
- 무결성 수준이 낮은 객체로부터 얻은 정보를 바탕으로 무결성 수준이 높은 객체를 수정하는 행위를 미연에 방지한다.
② 무결성 제한 (스타 무결성, no wirte up): I(S) <= I(O)
- 주체의 무결성 수준이 객체의 무결성 수준보다 열세할 때는 객체에 데이터를 쓸 수 없다 (= 수정이 불가능하다)
③ 호출 속성
- 첫번째 주체의 무결성 수준이 두번째 주체의 무결성 수준보다 우세할 때에만 첫번째 주체가 두번째 주체를 호출할 수 있다
클락 월슨 모델 [Clark Wilson Model] : 무결성을 강조
- 무결성을 강조한 모델
- 접근의 3요소(주체, 객체, 프로그램), 임무분할(separation of duty), 감사(auditing)을 통해 무결성을 검증
- 주체는 허가된 프로그램을 통해 객체에 접근
Q: 다음에서 설명하는 내용에 해당되는 것은?
전자서명의 서명자를 누구든지 검증할 수 있어야 한다. ( 검증과 인증은 다르다 )
① 위조불가 조건
② 부인불가 조건
③ 서명자 인증 조건
④ 재사용 불가 조건
Q: 전자서명이 제공하는 기능이 아닌 것은?
① 위조불가
② 인증
③ 부인방지
④ 기밀성
Q: 다음 중 업무 분리의 개념을 통합하고 데이터와 객체에 대한 모든 수정이 프로그램을 통해 수행되어야 하는 모델은?
① State machine model
② Bell Lapadula model
③ Clark Wilson model
④ Biba model
'TCP-IP 프로토콜' 카테고리의 다른 글
네트워크 설계 [ 접근통제 ] (0) | 2021.11.04 |
---|---|
Cryptography - Symmetric key Encryption 2 [ 네트워크 보안 ] (0) | 2021.10.14 |
Cryptography - Symmetric key Encryption [ 네트워크 보안 ] (0) | 2021.10.09 |
Cryptography - Symmetric key [ 네트워크 보안 ] (0) | 2021.10.07 |
CIA Triad [ 네트워크 보안 ] (0) | 2021.10.07 |