프로그래밍 농장

네트워크 설계 [사용자 인증] 본문

TCP-IP 프로토콜

네트워크 설계 [사용자 인증]

Tennessee201 2021. 10. 28.
728x90

- 접근통제 ( 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

 

728x90