<개요>
1. 접근통제(Access Control) 개념
비인가된 사용자의 정보자산 사용방지, 인가된 사용자가 비인가된 방식으로 정보자산 접근방지, 인가된 사용자가 인가된 방식으로 정보자산을 실수 혹은 의도적으로 접근하여 훼손하는 행위 방지
2. 절차
식별 : 인증 서비스에 스스로를 확인시키기 위하여 정보를 공급하는 주체의 활동
인증 : 주체의 신원을 검증하기 위한 사용 증명 활동
인가 : 인증된 주체에게 접근을 허용하고 특정 업무를 수행할 권리를 부여하는 과정
책임 추적성 : 사용자의 이용을 추적하고 그의 행동에 대해 기록하고 추적하는 활동, 시스템의 각 개인은 유일하게 식별되어야 한다는 원칙, 정보보호에 대한 역할과 책임을 명확하게 규명, 사고 후에도 감사 가능하도록 함
3. 요구사항
입력의 신뢰성, 최소권한부여, 직무분리
<사용자 인증>
- 개인 식별 기술 : 사용자 B가 제3자 C에게 사용자 A로 가장할 수 없는 경우를 말한다. 즉, B가 C에게 자신이 A가 아니라고 확인시켜 줄 수 있는 기술이다. 사용자 인증과는 약간 다름
- 메시지 출처 인증기법 : 메시지 암호화 + 메시지 인증코드(MAC) + 해시함수
1. 유형
유형 | 설명 | 예 |
Type1 (지식) | 주체는 그가 알고 있는 것을 보여줌 | 패스워드, 핀(PIN) |
Type2 (소유) | 주체는 그가 가지고 있는 것을 보여줌 | 토큰, 스마트카드 |
Type3 (존재) | 주체는 그를 나타내는 것을 보여줌 | 지문, 얼굴 |
Two Factor | 두 가지 인증 메커니즘을 결합하여 구현 | 토큰+PIN |
Multi Factor | 세 가지 이상의 인증 메커니즘 사용 | 토큰+PIN+지문인식 |
- 콜백 : 위치기반 인증 방식
2. 기법
(1) 지식 기반 인증
1) 장점 및 단점
- 장점 : 다양한 분야에서 사용가능, 검증 확실성(애매모호함이 없다), 관리비용의 저렴
- 단점 : 소유자가 패스워드 망각가능, 공격자에 의한 추측가능, 사회공학적 공격에 취약, 사용자에 의한 관리부주의
2) 패스워드(Password)
가장 간단하면서 오랫동안 사용된 방법, 가장 안전성이 떨어지는 메커니즘
- 고정된 패스워드
접속 시에 반복해서 사용되는 패스워드를 의미
표나 파일에 사용자 아이디 정렬해서 저장, 패스워드의 해시를 저장, 패스워드 솔팅 등 방법이 있음
- 일회용 패스워드(One-Time-Password) -> 단말장치로 주로 구현되므로 Type2로 분류
동적 패스워드, 인증목적을 위해 사용되며 오직 한번만 유효하다. 따라서 재전송 공격 방어 가능
- 문제점
개인정보 등을 사용하면 패스워드 추측이 쉽다. 크래킹 툴 NTCrack, John the ripper 등으로 크랙하기 쉽다.
무작위로 만든 패스워드 사용시 기억하기 어렵다.
- 패스워드 점검도구
John the ripper, pwddump, L0phtcrack
- 보안정책
최소 8자리 이상의 문자와 4가지 유형의 문자(대/소문자, 숫자, 특수문자의 조합)로 구성한다.
동일한 패스워드를 재사용해서는 안되고, 공유되어서는 안된다.
시스템은 실패한 로그인 시도 횟수를 제한하도록 임계치를 설정한다.
단기간의 휴면 사용자 계정은 사용불가능하게 하며, 더이상 사용되지 않는 사용자 계정은 삭제한다.
- 안전성
패스워드 추측 확률 P = (L*R)/S, L : 패스워드 사용기간, R : 사용빈도, S : 패스워드 길이
3) 시도-응답 개인 식별 프로토콜
대칭키 암호와 공개키 암호에 기반을 둔다. 어떤 실체가 자신의 신분을 다른 실체에게 증명하기 위하여 자신만이 소유하고 있는 어떤 비밀정보(ID 아님)를 자신이 알고 있다는 사실을 간접적으로 보여주는 프로토콜
4) 영지식 개인 식별 프로토콜
클라이언트가 서버에게 패스워드나 비밀키와 같은 비밀정보를 알고 있다는 사실을 직접 또는 간접적으로 보여주는 프로토콜. 즉, 자신의 비밀정보를 서버에게 제공하지 않고 자신의 신분을 증명하는 방식
5) i-PIN(Internet Personal Identification Number)
인터넷상에서 주민번호 대신에 아이디와 패스워드를 이용하여 본인확인을 하는 수단
- 효과 : 주민등록번호 유출예방, 본인확인 강화
(2) 소유 기반 인증
1) 장점 및 단점
- 장점 : 일반적임(다양한 수단), 입증된 기술, 비용측면에서 생체인식보다 경제적
- 단점 : 소유물이 없을 경우 인증이 어려움, 복제가 가능, 자산 관리 기능이 요구됨, 사회공학적 공격 가능
2) 메모리카드(토큰)
정보를 저장할 수 있으나, 정보를 처리할 수는 없다.
3) 스마트카드
정보를 저장 및 처리할 수 있는 H/W, S/W를 가지고 있다.
- 정적 데이터 인증 : 매회 인증할 때마다 같은 데이터를 사용, 발행자의 개인키로 서명된 정적 응용 프로그램 데이터와 인증기관의 개인키로 서명한 발행자의 공개키를 저장하고 있어야 한다. ex 출입카드
- 동적 데이터 인증 : 매회 인증할 때마다 다른 데이터를 사용, 카드 단말기가 임의로 생성한 난수를 전송하면 스마트카드에 저장된 스마트카드의 개인키(정적 데이터)를 이용하여 서명한 결과를 전송, 인증기관의 개인키로 서명한 발행자의 공개키가 저장되어 있어야 한다.
4) 일회용 패스워드(OTP, One-Time-Password)
OTP용 프로그램에서 사용자 비밀번호(사전에 공유한 비밀값)와 일회용 비밀번호 생성용 입력값을 입력하면 암호 알고리즘을 사용하여 일회용 패스워드를 생성하는 사용자 인증 방법
- 전달방식 : OTP토큰, 스마트폰 앱, SMS 등(이메일 안됨)
- OTP 토큰 : OTP를 자체 생성할 수 있는 연산기능과 암호 알고리즘 등을 내장한 별도의 단말기, 외형은 USB와 유사, 크기는 손가락 두마디 정도, 토큰은 별도 추가비용을 지급하고 구매해야 한다.
구분 | 비동기화 방식(질의응답 방식) |
특징 및 절차 | 시도응답 방식 인증 서버는 사용자에게 시도를 보냄 -> 사용자는 임의값을 토큰장치에 입력 -> 토큰장치는 사용자에게 일회용 패스워드로 값 반환 -> 사용자는 OTP와 사용자 이름을 인증서버로 전송 -> 인증서버는 이전에 보낸 값과 동일하면 사용자 인증함 |
OTP 입력 | 은행에서 전달받은 질의 값(임의의 난수), 사용자가 직접 입력 |
장점 | 구조가 비교적 간단, OTP 생성매체와 인증서버 간 동기화가 필요없음 |
단점 | 사용자가 질의 값을 직접 입력해야 하므로 사용이 번거로움, 은행은 같은 질의 값 생성되지 않도록 인증서버 관리 필요 |
구분 | 시간 동기화 방식 | 이벤트 동기화 방식(계수기 동기화 방식) |
특징 | 시간 또는 계수기를 이용한 인증서비스와 동기화가 핵심 토큰장치와 인증서비스는 반드시 동일한 비밀키를 공유하여 암, 복호화에 사용 |
|
OTP 입력 | 토큰장치의 시간값과 비밀키가 OTP생성 위해 사용 | 사용자가 토큰장치 버튼누르면 다음 인증값 나타남 |
장점 | 질의값 입력 없어 질의응답 방식보다 사용이 간편, 호환성 높음, 약간의 오차범위는 허용 | 시간 동기화 방식보다 동기화되는 기준값을 수동으로 조작할 필요가 없어 사용이 간편, 호환성 높음 |
단점 | 시간정보 동기화 필요, 일정시간 이상 인증 못받으면 새로운 비밀번호 생성시까지 기다려야 함 | 계수기 값 동기화 필요 |
- S/KEY 방식 : 유닉스 운영체제에서 사용, 해시기반, 클라이언트에서 정한 임의의 비밀키를 서버로 전송하여 ~~
- 거래연동 OTP : 수취인 계좌번호나 송금액 등 거래정보와 연계하여 해당 거래에만 유효한 인증정보로 인증하는 기술
- OTP 단점 : 토큰장치를 공유 또는 분실하였을 경우 악용소지 있음, 토큰장치 배터리 방전 혹은 오류 가능
(3) 개체(생물학적) 특성 기반 인증
1) 장점 및 단점
- 장점 : 사용하기 쉽다. 잊어버리거나 손실되거나 도난당할 수 없다. 위조가 어렵다. 대여가 불가능하다.
- 단점 : 판단 모호성이 존재한다. 관리가 어렵다. 인증을 위한 임계치 설정이 어렵다.
2) 생체인증(Biometics)
- 생체인증 기술 평가항목
보편성(Universality) | 모든 사람이 가지고 있는 생체 특징인가? |
유일성(Uniqeness) | 동일한 생체 특징을 가진 타인은 없는가? |
지속성(영구성, Permanence) | 시간에 따른 변화가 없는 생체 특징인가? |
획득성(Collectability) | 정량적으로 측정가능한 생체 특징인가? |
성능(Performance) | 환경변화와 무관하게 높은 정확성 얻을 수 있는가? |
수용성(Acceptability) | 사용자의 거부감은 없는가? |
반 기만성(Anti-Circumvention) | 고의적인 부정사용으로부터 안전한가? |
- 생체인증 기술 유형비교
유형 | 장점 | 단점 | 주 응용분야 |
지문 | 안전성 우수, 비용 저렴 | 훼손된 지문은 인식곤란 | 범죄수사, 일반산업 |
얼굴 | 거부감 적음, 비용 저렴 | 주위 조명에 민감, 표정 변화에 민감 | 출입 통제 |
망막/홍채 | 타인에 의한 복제 불가능 | 사용 불편, 이용에 따른 거부감 | 핵시설, 의료시설, 교도소 |
음성 | 원격지 사용가능, 비용 저렴 | 정확도 낮음, 타인에 의한 도용가능 | 원격 은행업무, 증권, ARS |
서명 | 거부감 적음, 비용 저렴 | 서명 습관에 따라 인식률 격차 큼 | 원격 은행업무, PDA |
행동학적 특징 이용 : 서명, 음성, 키보드 리듬, 키 스트로크 인식
생체적 특징 이용 : 지문, 얼굴, 망막, 홍채, 정맥, 손모양 등
- 생체인증 기술 도입시 선결과제
정확성 | FRR(False Rejection Rate) : 오거부율, 등록된 사용자를 거부하는 인식 오류율, FRR 높으면 보안수준이 높은 것 FAR(False Acceptance Rate) : 오인식율, 등록되지 않는 사용자를 등록된 사용자로 오인하는 비율, 높은 보안 성능을 유지하기 위해서는 FRR보다 FAR의 성능이 더 중요하다. FAR이 높으면 위험 CER(Crossover Error Rate) : 교차 오류율, FRR과 FAR이 일치하는 지점, 표준 평가 지점, 낮을수록 정확 |
속도 및 처리량 | 일반적인 생체인식 기술 처리속도는 느리며, 처리량은 낮은 수준 |
수용성 | 개인의 프라이버시, 치매, 심리적, 신체적 편리함을 고려해야 한다. |
- KISA의 공인인증 가이드라인 요구사항
루팅, 탈옥 등 스마트폰이 불법 변경된 환경에서는 모든 저장소에 접근 가능하기 때문에 물리적으로 독립된 안전한 하드웨어 저장소 활용을 권고
비밀번호, 생체정보 등 전자서명생성정보 접근을 위한 로컬인증 실패시 횟수를 제한해야 한다.
스마트폰 내 지문인식 장치의 FAR은 1/50000 을 지원하여야 하며, FRR은 2~3% 이하를 지원하여야 한다.
위조지문 등 스마트폰 내 지문인식 장치의 취약점이 발견되는 즉시 보안조치가 이루어져야 한다.
TEE(신뢰된 실행 환경) 클라이언트와 TA(신뢰된 애플리케이션)는 신뢰된 상호인증을 수행할 것을 권고
3. 통합 인증 체계(SSO, Single Sign On)
(1) 개요
- 정의 : 한번의 시스템 인증을 통하여 접근하고자 하는 다양한 정보시스템에 접근할 수 있도록 하는 통합 로그인 솔루션
- 구성요소 : 사용자, 인증 Server, LDAP(네트워크 디렉터리 서비스), SSO Agent(자동인증 정보 송수신 수행)
- 장점 : 운영비용 감소, 보안성 강화, 사용자 편의성 증가(PW 분실 위험 감소), 중앙집중 관리를 통한 효율적 관리가능
- 단점 : SSO 서버가 단일실패지점, SSO 개발 및 운영비용 발생, 자원별 권한관리 미비, 보안관리자의 업무 부담
- EAM(Extranet Access Management) : 하나의 ID, PW 입력으로 다양한 시스템 접근, 각 ID마다 사용권한을 차등부여하는 통합 인증 및 권한관리 시스템, SSO+정책기반+접근제어, 시스템관리(권한제어)의 비용 및 시간 손실 발생
- IAM(Identity and Access Management) : ID, PW를 종합적으로 관리해주는 역할기반 사용자 계정 관리 솔루션, EAM을 확장 또는 보완한 것, 기업 업무프로세스 근거한 사용자 관리 및 접근제어, 자동화된 자원관리로 확장 용이
(2) 커버로스(Kerberos) - Needham-Schroeder 프로토콜 기반
- 정의 : 분산 환경을 위한 SSO의 한 예, 대칭키(비밀키) 암호기법에 바탕을 둔 티켓 기반 인증 프로토콜
- 특징 : 확장성, 투명성, 안전성, 보안을 가진다. 사용자에게 동일한 계정정보로 여러가지 서비스를 받을 수 있게 한다. 커버로스 사용 이유는 주체들이 직접 통신하기에는 서로를 충분히 신뢰하지 않기 때문
- 장점 : 데이터의 기밀성과 무결성 보장, 재생공격 예방, SSO 제공, 대칭키 사용하여 도청으로부터 보호, 타임스탬프 사용하여 가장(재전송 공격) 방지 가능, 부인방지 제공
- 단점 : 패스워드 사전공격에 약함, 비밀키와 세션키가 임시로 단말기에 저장되어 침입자에 의해 탈취 가능, 비밀키 변경 필요, KDC가 단일실패지점이 될 수 있음, KDC가 많은 수의 요청을 처리가능해야 한다. TGS와 AS는 물리적 공격 및 악성코드로부터 공격에 취약, 타임스탬프로 인하여 시간 동기화 프로토콜 필요
- 구성요소
KDC | 키 분배 서버, 모든 사용자와 서비스들의 암호화 키를 보유 신뢰할 수 있는 기관으로서 티켓을 생성, 인증서비스를 제공 사용자의 패스워드는 비밀키로 변환된다. 이것은 민감 데이터 전송 위해 사용, 사용자 인증목적으로도 사용 |
AS | 실질적으로 인증을 수행, KDC의 부분 서비스, 암호화 키가 저장된다. |
TGS | 티켓 부여 서비스, KDC의 부분 서비스, AS에 티켓을 요청한다. |
Ticket | 사용자에 대해 신원과 인증을 확인하는 토큰 사용자가 다른 주체들과 통신 필요할 때마다 패스워드 입력하지 않도록 도와준다. |
Principals | 인증을 위하여 커버로스 프로토콜을 사용하는 모든 실체 |
(3) 세사미(SESAME)
커버로스의 기능을 확장하고 약점 보완하기 위해 개발된 SSO 기술
대칭 및 비대칭 암호화 기법을 사용하여 인증서비스 제공
(4) SPNEGO
마이크로소프트 제품 SSO에 사용
<접근통제 보안모델>
1. 접근통제 모델
(1) 강제적 접근통제(MAC, Mandatory Access Control)
- 정의 : 주체와 객체의 등급을 비교하여 접근권한을 부여하는 접근통제, 자원의 보안레벨(보안 레이블)과 사용자의 보안 취급인가(보안 허가증)를 비교하여 접근제어, 다중수준보안정책(MLS)에 기반(상위보안수준에서 하위보안수준으로 흐르는것 방지)
- 권한부여 : System
- 장점 : 중앙집중형, 안정적, 접근규칙 수 적어서 통제 용이
- 단점 : 구현 및 운영의 어려움, 성능 저하 우려, 고가의 비용, 사용자 친화적이지 않다.
- 적용 사례 : 방화벽, 군 시스템
(2) 임의적 접근통제(DAC, Discretionary Access Control)
- 정의 : 접근하고자 하는 주체의 신분(식별자)에 따라 접근권한을 부여하는 접근통제
- 권한부여 : Data Owner
- 장점 : 분산형, 유연함, 구현 용이
- 단점 : 트로이 목마에 취약, ID 도용시 통제방법이 없음, 멀웨어에 취약
- ACM(접근제어 행렬) : 주체에 의해 수행되는 객체 관리하는 규칙의 집합, 2차원 행렬, 행에 주체, 열에 객체, 효과적으로 권한부여 정책을 정의, 주체와 객체 수 많아지면 관리 어려움, 비어있는 셀 수 때문에 공간적으로 비효율
- ACL(접근제어 목록) : 객체 중심으로 하나의 객체에 대한 접근권한을 갖고 있는 주체들의 모임
- 자격목록(권한리스트) : 주체가 객체에 대해 갖는 접근권한 리스트, ex 커버로스
(3) 역할기반 접근통제(RBAC, Role Based Access Control)
- 정의 : 주체와 객체 사이에 역할을 부여하여 임의적, 강제적 접근통제의 약점을 보완한 방식, 인사 이동이 잦은 조직에 적합, Non-DAC
- 권한부여 : Central Authority
- 장점 : 관리 용이, 특권 최소화, 직무 분리, 데이터 추상화
- 적용 사례 : HIPPA
2. 보안 모델
(1) 벨라파듈라 모델(BLP, Bell-LaPadula Confidentiality Model) - MAC
- 정의 : 기밀성을 집행하는 상태머신 모델이며 정보흐름 모델, 다중등급 보안정책에 대한 최초의 수학적 모델
- 보안 규칙 : No read up(주체는 같거나 낮은 보안수준의 객체만 읽을 수 있다), No write down(주체는 같거나 높은 보안수준의 객체에만 쓸 수 있다), 특수*-속성 규칙(주체가 객체에 대하여 읽기, 쓰기를 할 수 있기 위해서는 보안 허가와 보안 분류가 동일해야 한다)
- 장점 : 기밀성 유지에 강함
- 단점 : 무결성과 가용성은 고려하지 않음, 은닉채널을 다루지 않음, 파일공유나 서버 이용하는 시스템 다루지 않음, 안전한 상태천이에 대해 명확히 다루지 않음, 다중등급 보안정책에 치중하여 다른 정책 고려하지 않음
(2) 비바 무결성 모델(Biba Integrity Model) - MAC
- 정의 : 무결성을 위한 상업용 모델, 상태머신 모델이며 최초의 수학적 무결성 모델(비인가자에 의한 데이터 변형 방지만 취급)
- 보안 규칙 : 단순 무결성(I(S)<=I(O), 객체의 무결성(보안) 수준이 주체의 무결성(보안) 수준보다 우세할 때만 주체는 객체 읽을 수 있다), 무결성 제한(I(S)>=I(O), 주체의 무결성(보안) 수준이 객체의 무결성(보안) 수준보다 우세할 때만 주체는 객체를 변경할 수 있다), 호출 속성(주체는 보다 높은 무결성을 갖는 주체에게 서비스를 요청할 수 없다)
(3) 클락-월슨 무결성 모델(Clark-Wilson Integrity Model) - MAC
- 정의 : 무결성 중심의 상업적 모델(무결성 3가지 목표 제시)
- 무결성 모델 목적 : 허가되지 않은 사용자로부터 수정 방지, 허가된 사용자의 부적절한 수정 방지, 내외부 일치성 유지
(4) 만리장성 모델(CWM, Chinese Wall Model, Brewer-Nash Model) - MAC, DAC
- 정의 : 사용자의 이전 동작에 따라 변화할 수 있는 접근통제를 제공, 정보흐름 모델 기반
(5) 기타 모델
- 정보흐름 모델 : 한 보안수준이 다른 보안수준으로 이동하는 것을 포함하는 모든 종류의 정보흐름을 다룬다. 은닉채널이 존재하지 않는다는 것ㅇ르 보장하는 방법에 대한 규칙을 만든다.
- 상태머신 모델 : 시스템 내의 활동에 상관없이 시스템이 스스로를 보호하고 불안정한 상태가 되지 않도록 하는 모든 컴퓨터에 적용되는 관념적 모델, 시스템은 상태천이를 통해 안전한 상태를 유지, 모든 보안모델에 기본적으로 적용
<접근통제 보안위협 및 대응책>
1. 패스워드 크래커(Password Cracker)
(1) 사전 공격(Dictionary Attack)
패스워드 사전파일을 이용하여 접속 계정을 알아내는 해킹방법. 공격대상의 개인정보 등을 충분히 알고 있다면 매우 효율적인 공격방법. 패스워드의 해시값 또는 패스워드 파일을 포착하며, 포착 후 소프트웨어 툴 자체에 이미 포함된 단어와 포착된 패스워드가 일치할 때까지 비교작업을 수행
(2) 무차별 공격(Brute-force Attack) = 전수 공격법
성공할 때까지 가능한 모든 조합의 경우의 수를 시도해 공격하는 해킹방법
대응책 : 패스워드 복잡도 높이기, 실패한 로그인 횟수 제한하도록 임계치 설정
(3) 레인보우 테이블을 이용한 공격
레인보우 테이블은 하나의 패스워드에서 시작해 특정한 변이 함수로 변이된 형태의 여러 패스워드를 생성한다. 그리고 변이된 각 패스워드의 해시를 고리처럼 연결하여 일정 수의 패스워드와 해시로 이루어진 체인을 무수히 만들어 놓은 테이블이다. 이 공격은 적은 시간이 소요된다.
2. 사회공학 공격
(1) 정의
신뢰할 수 있는 개인이나 조직을 사칭하여 공격대상의 민감정보를 빼내는 작업을 통칭한다.
(2) 인간기반 사회공학 공격
어깨넘어 훔쳐보기, 협박메일, 따라 들어가기, 내부자의 결탁으로 인한 정보유출 등
(3) ICT 기반 사회공학 공격
구분 | 피싱(Phishing) | 파밍(Pharming) |
주된 목적 | 가짜 사이트로 유도해 개인정보 탈취 | 가짜 사이트로 유도해 개인정보 탈취 |
공격 특징 | 주로 이메일, SMS 등에 첨부된 링크를 통해 접속을 유도 | 사이트가 공식적으로 운영하고 있는 도메인 자체를 중간에서 탈취하는 수법, 별다른 유인매체 불필요 |
위험성 | 사용자가 세심한 주의 기울이면 공격탐지, 피해방지 가능 | 실제 도메인이름이 그대로 사용되므로 공격탐지 곤란 |
- 스미싱(SMishing) : SMS와 Phishing의 결합어로 휴대폰 문자메시지를 이용한 피싱 방법
3. 은닉채널(Covert Channel)
은닉채널이란 엔티티가 허가되지 않은 방식으로 정보를 받는 방법이다.
대응책 : 로그분석, HIDS(호스트 기반 IDS) 탐지, 통신대역폭에 대한 엄격한 제한, 시스템 자원 분석
4. 방사(Emanation)
컴퓨터와 장치로부터 방출되는 전기적 신호를 가로채는 방법이다. 이를 통해 해당 전기적 신호를 발생시킨 원래 데이터를 알아낼 수 있다.
대응책 : 템페스트(TEMPEST, 차폐물질), White noise, 통제구역