[정보보안기사] 정보보안 일반 - (1) 보안요소 기술
본문 바로가기

[정보보안기사] 정보보안 일반 - (1) 보안요소 기술

액트 2019. 7. 3.


- 목차 -

1. 보안요소 기술
    (1) 인증기술
        ① 사용자 인증기술
        ② 메시지 출처 인증기술
        ③ 디바이스 인증기술
        ④ Kerberos 프로토콜
    (2) 접근통제 정책
        ① 접근통제 정책 구성요소
        ② 임의적 접근통제(DAC ; Discretionary Access Control)
        ③ 강제적 접근통제(MAC ; Mandatory Access Control)
        ④ 역할 기반 접근통제(RBAC ; Role Based Access Control)
    (3) 키 분배 프로토콜
        ① KDC 기반 키 분배
        ② Needham-Schroeder 프로토콜
         Diffie-Hellman 프로토콜
         RSA 이용 키 분배 방법(RSA 암호 알고리즘을 말하는 게 아냐)
    (4) 전자서명과 공개키 기반구조(PKI)
         전자인증서 구조
         전자서명 보안 서비스
         PKI 구성 방식(계층, 네트워크)
         CRL 구조 및 기능
         OCSP 동작 절차
        ⑥ 전자서명 관련 법규


1. 보안요소 기술

    (1) 인증기술

        ① 사용자 인증기술

            ▶ 사용자 인증 : 통신하고 있는 상대가 내가 원하는 상대인지 확인할 수 있도록 해주는 기술

            Ⅰ. 개별식별 : 사용자 인증에서 더 발전해서, A와 C가 통신할 때 B가 C에게 A인척 못하게 하는 것

            Ⅱ. 사용자 인증 유형별 방법

                ⓐ What you know(지식기반 인증방식) : ID/PW, I-PIN, 사전에 등록된 질문과 답

                   - 사람의 지식에 따른 내용으로 인증 / 관리가 편하고 용이 / 습관에 따라 패스워드 설정하기에 유추 쉽고 보안성 낮음

                ⓑ What you have(소유 기반 인증방식): OTP, HSM, 보안카드, 스마트카드, 공인인증서

                   - 소지한 별도 매체의 고유 정보를 직접 제시 / 매체에 대한 분실 우려

 

                ⓒ What you are(생체기반 인식 기술) : 지문, 홍채, 음성, DNA, 서명, 망막

                   - 개인의 고유한 신체적, 생리학적 특징과 행위를 이용한 인증방법(키 X, DNS 검사 X)                   

 

        ② 메시지 출처 인증기술 

            ▶ 메시지 또는 자료의 출처가 알려진 출처가 맞는지 확인하는 기술

            ▶ 메시지 출처를 인증하는 기술은 크게 "메시지를 암호화하는 방법 / 메시지 인증코드 / 해시함수" 로 나뉨

 

            Ⅰ. 메시지를 암호화 하는 방법은 대칭키 또는 비대칭키를 이용한다

            Ⅱ. 메시지 인증코드(MAC ; Message Authentication Code)

                ▶ 메시지와 대칭키를 입력 해 인증값으로 쓰기 위해 만들어진 코드

                ▶ 사전에 송신자와 수신자 간의 대칭키의 공유가 필요함

                ▶ 수신자는 수신한 메시지와 대칭키를 가지고 직접 MAC을 만들어, 수신한 MAC과 비교해 인증을 수행

            Ⅲ. 해시함수

                ▶ 데이터를 정해진 크기의 Message Digest로 만드는 일방향 함수(One-Way Function)

                ▶ MAC과 달리 대칭키를 사용하지 않기에 키 교환이 필요 없음

                ▶ 해시함수의 결과값 자체는 기밀성이 없어서 해쉬값을 포함한 암호가 필요

                ▶ 에러 탐색 능력 제공

 

        ③ 디바이스 인증기술

            ▶ 디바이스 <-> 사람, 디바이스 <-> 디바이스 인증체계와 콘텐츠 보호와의 연동의 필요성이 생김 

 

            Ⅰ. ID/PW기반 디바이스 인증

                ▶ SSID방식 / WEP 인증방식 / RFID와 리더기 간의 인증방식 등

 

            Ⅱ. MAC 주소 기반 디바이스 인증

                ▶ 접속하는 단말기의 MAC 주소 값을 인증서버 또는 AP에 등록해서 인증받는 방식 ex) AP                

 

            Ⅲ.  암호 프로토콜을 이용한 디바이스 인증

                ▶ AP를 통한 정보 자산의 불법적인 접근 또는 키나 세션을 훔쳐 정보를 유출하는 시도를 차단

                ⓐ 802.1x 인증

                    ▶ 유무선 네트워크에서 인증된 네트워크를 접속하는 IEEE 표준

                    - 사용자 ID 인증, 동적 키 관리 및 계정 지원

                    - PAP / CHAP / RADIUS / PEAP / WEP 프로토콜

                ⓑ 802.11i 인증

                    ▶ RC4 기반의 WEP 기술에 대한 취약점 해결하기 위해 제정

                ⓒ WPA(Wi-Fi Protected Access)

                    ▶ WEP에 비해 정교한 데이터 암호화와 완전한 사용자 인증 기능 제공

                    - TKIP과 802.1x 인증 방식을 사용

                ⓓ EAP(Extensible Authentication Protocol)

                    ▷ 인증을 위해 최적화된 전송 프로토콜

                    - EAP-MD5 / EAP-TLS / EAP-TTLS / EAP-PEAP / EAP-Fast / LEAP

 

            Ⅳ. Challenge-Response 인증

                ▶ 일회성 해시값을 생성해 사용자를 인증하는 방법

                ▶ 인증서버가 난수를 만들어 클라이언트로 전송하면 클라이언트는 해쉬 알고리즘을 적용해 반환함

 

        ④ Kerberos 프로토콜

            ▶ 분산 환경하에서 개체 인증서비스를 제공하는 네트워크 인증시스템

            ▶ 현재 네트워크상에서 가장 많이 사용한다

            ▶ 비대칭키 암호방식을 전혀 사용하지 않고 대칭키 암호방식만 사용

            ▶ 대칭키 암호 방식을 사용하여 신뢰된 티켓 발급 서버를 이용해서 인증한다

            ▶ 사용자가 서버의 인증을 받기 위해 티켓이라는 인증값을 사용

 

            Ⅰ. 인증방식

                 - 티켓발급 서버에서 발급 받은 티켓을 이용하여 서버로부터 인증을 하는 방식(버전4, 5가 있다)

 

            Ⅱ. 구성요소
                ⓐ 클라이언트(다수)  ⓑ 인증서버(AS)  ⓒ 티켓 발급 서버 ⓓ 서버: 클라가 접속하고자 하는 서버

 

            Ⅲ. 인증순서

                ⓐ 클라이언트가 서버에 접속하기 위해 패스워드를 사용하여 인증서버로부터 인증을 받음 

                ⓑ 인증서버는 티켓 발급 서버가 인증된 클라이언트로 티켓을 발급하는 것을 허락함

                ⓒ 티켓발급서버가 클라이언트로 티켓을 발급함

                ⓓ 티켓을 받은 클라이언트는, 티켓을 이용해 서버에 인증을 받고 서비스를 받음

 

            Ⅳ. 용어 

                ⓐ Realm(영역) : 하나의 Kerberos 시스템에 속해 있는 클라이언트와 서버의 범위

                ⓑ 신임장(Credential) : 티켓 발급 서버가 클라이언트에게 발급하는 것으로 티켓과 인증자로 구성

                ⓒ 인증자 : 티켓이 유효하다는 것을 증명하기 위해 사용되는 값으로 부가정보를 포함

 

            Ⅴ. 티켓의 포함 내용

                ⓐ 클라이언트 ID와 네트워크 주소

                ⓑ 티켓의 유효기간

                ⓒ 접속 하기원 하는 서버의 ID

                ⓓ 서비스 기간 동안 공유하는 세션 키

 

            Ⅵ. 장점

                ▶ 통신내용을 암호화 키와 암호 프로세스를 이용하여 보호하기에 데이터의 기밀성과 무결성이 보장됨

 

            Ⅶ. 단점

                ⓐ 모든 클라이언트와 암호화 키에 대한 정보가 KDC에 있기에, KDC 단일 오류 지점이 될 수 있음

                ⓑ 비밀키와 세션 키가 사용자 시스템에 저장되기에 유출과 침입에 취약

                ⓒ 패스워드 추측 공격에 취약하며, 사용자가 패스워드를 바꾸면 대칭키 또한 변경해야 되는 번거로움

                ⓓ 티켓의 유효기간 때문에, 모든 클라이언트와 서버 간의 시간의 동기화가 필요함

                ⓔ 가장 큰 문제점으로, 재전송 공격에 약함

 

            Ⅷ. Kerberos 버전 4, 5 차이점

Kerberos 4 Kerberos 5
암호화 시스템에 대한 의존, DES 사용 CBC모드 사용
메시지 바이트 순서, 순서 표시 고정 ASN.1과 BER 인코딩 규칙 표준 사용
티켓 유효기간 최대 256*5=1280분 시작시간과 끝 시간 표시
인증 발송 불가 인증 발송 가능
영역간의 인증 불가 커버로스 대 커버로스의 상호 인증 가능

 

 

    (2) 접근통제 정책

        ① 접근통제 정책 구성요소 

             ▶ 컴퓨터 시스템 사용자는 시스템을 사용하기 위해 식별과 인증 과정을 통과하여 시작된다

             

             Ⅰ. 접근통제 정책

                  ⓐ 신분 기반 정책 : 주체의 신분에 근거한 접근통제 정책

                  ⓑ 규칙 기반 정책 : 주체에 허용된 접근 수준과 객체에 부여된 허용 등급에 따른 접근통제 정책

                             ex) 라우터나 방화벽 등의 접근통제에 쓰임

                  ⓒ 역할 기반 정책 : 객체에 대한 접근이 주체의 역할에 의해 결정되는 접근통제 정책

 

             Ⅱ.  접근통제 메커니즘 : 접근 요청을 접근통제 정책에 대응시켜 불법적인 접근을 방어함

                  ⓐ ACL(Access Control List) : 신분 기반 정책을 지원

                  ⓑ CL(Capability List) : 신분 기반 정책을 지원 / 주체에게 티켓을 부여(접근 객체와 범위가 지정됨)

                  ⓒ SL(Security Lable) : 규칙 기반 정책을 지원

 

             Ⅲ. 접근통제 관련 보안 모델

                  ⓐ Bell-LaPadula(BLP)

                      ▶ 데이터의 기밀성 유지를 주목적 / 정보의 불법적 유출을 방어하기 위한 최초의 수학적 모델

                      ▶ 단순 보안 속성 : 주체는 자신의 보안등급보다 높은 등급의 객체에 접근 불가

                      ▶ 성형 속성 : 주체는 자신의 보안등 급보다 낮은 등급의 데이터를 수정할 수 없음

                  ⓑ Biba

                      ▶ 데이터의 무결성 유지를 주목적으로 함 / BLPa 모델의 단점인 무결성을 보장할 수 있도록 보완

                      ▶ 단순 무결성 원리 : 주체 집단에게 주어진 무결성 등급보다 낮은 객체는 못 읽음

                      ▶ 성형 무결성 원리 : 주체에게 주어진 무결성 등급보다 높은 등급의 객체는 수정 못함

                  ⓒ Clark-Wilson

                      ▶ Biba 이후에 나왔으며, Biba의 무결성 보호를 조금 다른 관점에서 접근함

                      ▶ 주체가 객체에 직접 접근은 할 수 X / 오직 프로그램을 통해 간접적으로 접근

 

        ② 임의적 접근통제(DAC ; Discretionary Access Control) 

             ▶ 사용자가 누구고 어떤 그룹에 속해 있는지에 따라 접근통제가 이루어 진다 ex) windows

             ▶ 구현을 위해 일반적으로 ACL(Access Control List)을 활용한다

             ▶ 중앙집중적 통제 환경에는 적합지 않고 사용자 기반과 ID기반 접근통제이다

 

 

        ③ 강제적 접근통제(MAC ; Mandatory Access Control) 

             ▶ 관리자가 주체들에겐 허가 등급을, 각각의 객체에는 비밀등급을 부여해서 주체의 허가 등급과 객체의 비밀등급을 따져 접근을 제어함

             ▶ 통제가 용이하고 보안 관리자 주도하에 중앙 집중적 관리가 가능하다는 장점

             ▶ 기밀성이 매우 높은 조직에서 사용됨

 

        ④ 역할 기반 접근통제(RBAC ; Role Based Access Control) 

             ▶ 역할 기반 정책의 적용, 사용자의 역할에 따라 접근을 제어함

             ▶ 인사이동이 빈번한 조직에 효율적

 


    (3) 키 분배 프로토콜

        ① KDC (Key Distribution Center) 기반 키 분배 

             ▶ 비밀키를 만들어서 대칭키 암호화 통신을 원하는 사람들에게 키를 나누어 주는 역할

             ▶ 키를 나누어 준 뒤, KDC에서 키를 삭제하는 것도 좋지만 분실에 대비하는 것도 좋음

             ▶인원이 많아지면, 관리하는 키의 수가 기하급수적으로 증가해 현실적으로 관리가 불가능

            Ⅰ.키 분배 방식

                - 키의 사전분배 방식 : 한 가입자가 키를 만들어, 상대 가입자 혹은 양측 가입자에게 전달하는 방식

                   ex) Blom 방식 / 중앙집중식 키 분배(Kerberos에서 사용) / 공개키 분배(KDC가 공개키 분배)

                - 키 공유 방식(Key Agreement) 방식 : 키를 설정하는데 공동으로 참여

                   ex) Diffie-Hellman 키 교환 방식 등등

 

        ② Needham-Schroeder 프로토콜 

             ▶ 인증서버 S / 통신 주체 A / 통신주체 B 가있다고 가정하고 설명(K는 키값 / N은 난수 값)

                 1) A → S : A / B / N_A

                    A가 S에게 B와 통신하고 싶다고 알림 ; A와 B의 ID와 A가 생성한 난수 값 보냄

                 2) S → A : N_A / K_ab / B / [ [ K_ab, A ] K_bs ] K_as

                    S가 A에게, B와 통신할 때 쓸 키 K_ab를 주고, B에게도 알려주라고 K_ab를 K_bs로 암호화해서 줌

                 3) A → B : [ K_ab, A ] K_bs

                    아까 S가 B 주라고 줬던걸, B한테 보내줘

                 4) B → A : [ N_b ] K_ab

                    A로부터 키 값 K_ab를 받은 B는 응답신호로써 자신이 생성한 난수 값 N_b를 암호화해서 보냄

                 5) A → B : [ N-b - 1 ] K_ab

                    B로부터 받은 난수 값에서 1 빼고 암호화해서 보내

 

             ▶ 재전송 공격의 취약점이 있음(MITM에 취약) 그래서 타임스탬프를 사용함

 

         Diffie-Hellman 프로토콜 

             ▶ 공개키 암호의 시초, 두 사용자가 안전하게 키 교환을 하는 방식이다

             ▶ 단순하고 효율적이며 키 교환에 있어 암호화된 세션키 전달이 필요치 않다 로컬에서 계산이 가능함

             ▶ 사용자 A와 B만이 키를 계산할 수 있기 때문에 기밀성 제공

             ▶ 신분 위장이나 재전송 공격에는 약하고 MITM(중간자 공격)에 취약하다

 

         RSA 이용 키 분배 방법

             ▶ RSA는 소인수 분해의 어려움을 이용하는 암호 알고리즘임

 

    (4) 전자 서명과 공개키 기반구조(PKI) 

         전자 인증서

             ▶ 사용자 공개키와 사용자 ID 정보를 결합해 인증기관이 서명한 문서이며 공개키의 인증성을 제공한다

             ▶ 사용자 확인, 특정권한, 능력 등을 허가하는데 활용, 개인의 신분증 같은 역할

             ▶ 인증기관(CA)는 자신의 개인키를 사용해 전자 서명을 생성하여 인증성에 첨부하고 CA의 공개키를 사용해 인증서의 유효성을 확인하다

 

             Ⅰ. X.509 인증서 표준 : ITU에서 제안한 인증서에 대한 기본 형식을 정의한 규격

 

             Ⅱ. 전자 인증서 구조

                 ⓐ 버전(Version) : 인증서 형식의 연속된 버전의 구준

                 ⓑ 일련번호(Serial Number) : 발행하는 CA 내부에서의 유일한 정수 값

                 ⓒ 알고리즘 식별자(Algorithm Identifier) : 인증서 생성에 사용된 알고리즘 OID값

                 ⓓ 발행자(Issuer) : 인증서를 발행하고 표시하는 CA

                 ⓔ 유효기간(Period of Validity) : 인증서가 유효한 시작과 끝 기간

                 ⓕ 주체(Subject) : 인증서가 가리키는 사람

                 ⓖ 공개키 정보(Public-key Information) : 주체의 공개키와, 이 키가 사용될 알고리즘 식별자

                 ⓗ 서명(Signature) : CA의 개인 서명키로 서명한 서명문

 

         전자서명 보안 서비스

             Ⅰ. 개념 - 내가 받은 메시지를 어떤 사람이 만들었는지를 확인하는 인증

             Ⅱ. 기능 - 사용자 인증(송신 부인방지) / 메시지 인증(무결성의 보장의 개념)

             Ⅲ. 특징 - 위조 불가 / 서명자 인증 / 부인 불가(서명 사실에 대해) / 변경 불가(변조 불가) / 재사용 불가

             Ⅳ. 전자서명 방식에 따른 분류

                 ⓐ 직접 서명(Direct Digital Signature) 방식 : 혼자서 서명 알고리즘 수행하고 서명하는 방식

                     - 키가 유출되면, 송신 부인방지가 안되며 기타 다른 요구사항이 충족 안됨

                 ⓑ 중재 서명(Arbitrated Digital Signature) 방식 : 서명자가 서명해서, 중재자에게 보내면 중재자가 한 번 더 서명하는 방식

 

             Ⅴ.  전자서명 알고리즘의 분류

                  ⓐ 메시지 복구 가능 전자서명 알고리즘(DSS ; Digital Signature Scheme) : 서명 값으로부터 메시지 추출해서 검증가능

                  ⓑ 원 메시지 필요 전자서명 알고리즘(DSS with appendix) : 검증을 위해 따로 원 메시지가 필요

 

             Ⅵ. 전자서명 방법 - 메시지에 직접 하는 방법 / 메시지의 해쉬값에 서명하는 방법 : 좀 더 효율적

 

         PKI Public Key Infrastructure 구성 방식 - 공겨키 기반 구조

            Ⅰ. 개념 - 공개키 인증서의 무결성을 제공하기 위한 신뢰구조

            Ⅱ. 구성요소

                ⓐ 공개키 인증서(Public Key Certificate) : 해당 키가 누구 것인지 알려줌

                ⓑ 인증기관(CA ; Certification Authority)

                ⓒ 등록기관(RA ; Registration Authority) : 인증서 신청 시, CA대신 신분, 소속을 확인해주는 기관

                ⓓ 저장소, 디렉터리(Repository) : 공개키를 저장하고 있는 기관

                ⓔ 사용자(User)

            Ⅲ. PKI 구성 방식

                ⓐ 순수 계층 방식(트리구조)

                    - 최상위 인증기관인 Root CA에 대한 신뢰를 바탕으로 하부 CA 간의 상호 인증은 배제하는 방식

                ⓑ네트워크 구조 방식

                    - 여러 Root CA를 두어 운영함 / 복잡함

 

         CRL 구조 및 기능 

            Ⅰ. CRL(Certificate Revocation List) : 인증서 취소 목록

            Ⅱ. 인증서 취소 사유

                - 인증서 발행 조직에서 탈퇴 / 비밀키의 손상 / 비밀키 유출 의심

 

         OCSP Online Certificate Status Protocol 동작 절차

            Ⅰ.개념 - 실시간 인증서 검증 프로토콜

            Ⅱ. 동작 방식 

                ▶ CA와 Repository와는 별도로 OCSP 서버를 하나 두고, 사용자의 검증 요구에 대한 결과를 제공하는 방식

                 OCSP Server는 특정 CA기관과 사용계약을 맺어야 하고 사용량에 따라 추가 비용 지불

                 OCSP Server가 CA기관과 계약을 맺으면 OCSP Server에 Server 인증서와 개인키가 발급됨

                 OCSP Server 인증서는 1년마다 교체해야 됨

 

OCSP CRL
RFC 2560 RFC 3280
실시간 인증서 검증 프로토콜 CA가 인증서 폐기시마다 인증서 폐기목록을 생성하는 것이 아닌 일정한 주기마다 인증서 폐기목록을 생성
사용량에 따라 추가 비용 지불 비용 지불 없이 사용 가능
서버용 인증서는 1년마다 교체  

 


[ 출처 ]

https://kit2013.tistory.com/213

댓글