1. 접근통제(Access Control) 개요
1) 정의
- 적절한 권한을 가진 인가된 주체만이 특정 시스템이나 정보에 접근할 수 있도록 통제하는 것
2) 절차
◆ 식별(Identification) 및 인증(Authentication)
- 수행주체: 사용자 자신
- 사용자는 고유 식별자(이름, ID 등)를 제공하고 암호·PIN·생체정보와 같은 자격증명을 통해 자신의 신원 인증
◆ 인가(Authorization)
- 수행주체: 시스템 관리자
- 관리자는 역할, 책임, 권한에 따라 인증된 사용자에게 특정 접근권한을 할당
◆ 모니터링 및 로깅
- 수행주체: 시스템 관리자
- 모니터링 및 로그 검토를 통해 접근 시도 기록·추적
- 책임 추적성: 주체를 고유하게 식별하여 그 행위를 추적할 수 있도록 보장하는 것
3) 요구사항
- 입력의 신뢰성: 식별 및 인증 과정에서 사용자 입력의 신뢰성을 검증하고 보장해야 함
- 최소권한원칙: 사용자가 직무 수행하는 데 필요한 최소 권한 부여
- 직무분리: 과도한 권한 갖는 것 방지
- 암호 및 자격증명 관리: 암호 복잡성, 로그인 실패 후 계정 잠금과 같은 암호 정책 관리
- 오류 처리 및 감사, 지속적인 모니터링 및 위협 탐지 등
2. 사용자 인증
(1) 유형
유형 | 설명 | 예 |
Type1 (지식) | 주체는 그가 알고 있는 것을 보여줌 | 패스워드, 핀(PIN) |
Type2 (소유) | 주체는 그가 가지고 있는 것을 보여줌 | 토큰, 스마트카드 |
Type3 (존재) | 주체는 그를 나타내는 것을 보여줌 | 지문, 얼굴 |
- Two Factor: 두 가지 인증 메커니즘을 결합하여 구현(토큰+PIN)
- Multi Factor: 세 가지 이상의 인증 메커니즘 사용(토큰+PIN+지문인식)
(2) 지식 기반 인증
1) 장점 및 단점
- 장점: ①친숙함 ②비용 효율성 ③구현 및 관리 용이함 ④다양한 분야에서 사용가능 ⑤검증 확실성(애매모호함이 없다)
- 단점: ①사용자에 의한 관리부주의 ②사용자가 패스워드 망각가능 ③공격자에 의한 추측가능 ④사회공학적 공격에 취약
2) 비밀번호(Password)
- 가장 간단하면서 오랫동안 사용된 방법
- 보관방법: 표나 파일 등에 저장, 패스워드 해시값을 저장, 패스워드 솔팅 등
- 문제점: ①패스워드 추측 용이 ②크래킹 툴을 사용하여 크랙 용이 ③패스워드 기억하기 어려움
- 보안정책:
> 최소 8자리 이상의 문자와 4가지 유형의 문자(대/소문자, 숫자, 특수문자의 조합)로 구성한다.
> 동일한 패스워드를 재사용해서는 안되고, 공유되어서는 안된다.
> 시스템은 실패한 로그인 시도 횟수를 제한하도록 임계치를 설정한다.
> 단기간의 휴면 사용자 계정은 사용불가능하게 하며, 더이상 사용되지 않는 사용자 계정은 삭제한다.
- 안전성: P = (L*R)/S
> P: 패스워드 추측 확률, L: 패스워드 사용기간, R: 패스워드 사용빈도, S: 패스워드 길이
- 점검도구: John the ripper, pwddump, L0phtcrack
- 일회용 패스워드(OTP, One-Time-Password): 주로 단말장치로 구현되므로 소유기반인증으로도 볼 수 있음
3) 영지식 개인 식별 프로토콜(ZK-PID)
- 증명자가 비밀 자체에 대한 세부 정보를 공개하지 않고 비밀에 대한 지식을 입증할 수 있도록 하는 프로토콜
- 증명자는 검증자와 대화식 단계를 통해 자신의 지식 증명
- 검증자가 비밀에 대한 정보 획득하지 못하도록 방지
4) 시도 응답 개인 식별 프로토콜(CR-PID)
- 검증자와 증명자 간 일련의 시도-응답 상호작용 포함
> 검증자는 무작위 질문 생성(수학적 문제, 특정 정보에 대한 문제 등)
> 증명자는 자신의 정보를 기반으로 처리하고 응답 생성
> 검증자는 예상 결과와 응답을 비교
5) 인터넷 개인 식별 번호(I-PIN)
- 한국에서 사용, 정부 또는 기관에서 발급하는 고유 식별 번호
- 사용자는 아이핀과 함께 생년월일 등 추가 정보 입력하여 본인인증
- 주민등록번호 사용 방지(유출 방지)
(3) 소유 기반 인증
1) 장점 및 단점
- 장점: ①다양한 수단 존재 ②비용측면에서 생체인식보다 경제적
- 단점: ①소유물이 없을 경우 인증 어려움 ②소유물 복제 가능 ③자산관리기능 요구됨 ④사회공학적 공격 가능
2) 메모리 카드(토큰)
- 사용자 인증하는 데 사용되는 암호화 키 또는 인증서 저장 가능
- 정보를 저장할 수 있으나 처리는 불가능
- SD 카드, USB 등
3) 스마트 카드
- 정보를 저장하고 처리할 수 있는 마이크로칩이 내장된 장치
- 정적 데이터 인증:
> 매회 인증할 때마다 같은 데이터 사용
> 카드 내 저장된 개인 키를 사용하여 전자서명됨
> 인증 시스템(카드 판독기 등)에서 공개 키를 사용하여 정적 데이터의 서명 확인
- 동적 데이터 인증:
> 매회 인증할 때마다 다른 데이터 사용
> 카드 판독기 등에서 임의 생성한 난수 전송
> 카드 내 저장된 개인 키를 사용하여 전자서명하고 전송
> 인증 시스템(카드 판독기 등)이 공개 키로 확인
- 인증 시스템(카드 판독기 등)에는 공개 키 저장되어 있어야 함
4) 일회용 패스워드(OTP, One-Time-Password)
- 강력한 보안 기능 있으나, 토큰을 공유 또는 분실한 경우 악용 위험 있으며 배터리 방전 또는 오류 가능
- 전달 방식: OTP토큰, 스마트폰 앱, SMS 등(이메일 안됨)
- 생성 방식: OTP 토큰 간 동기화 여부에 따라 비동기 방식과 동기화 방식으로 분류
◆ 비동기 방식(Asynchronous)
- 서버와 OTP 토큰 간 동기화 없이 서버가 사용자에게 질의한 값(임의의 난수)을 사용자가 OTP 토큰에 입력하여 OTP 생성하는 방식(시도 응답 방식)
- 장점: ①구조가 간단 ②동기화 불필요
- 단점: ①사용자가 매 인증 시마다 질의값을 입력해야 하는 불편함 ②통신횟수 비교적 많이 요구되어 부하 발생 가능
◆ 시간 동기화 방식(Time Synchronous)
- 서버와 OTP 토큰 간 시간 동기화 된 상태에서 현재 시각을 OTP 생성 알고리즘의 입력값으로 사용
- 장점: ①비동기 방식보다 사용이 간편 ②호환성 높음
- 단점: ①시간 동기화 필요 ②일정시간 동안 인증 진행안하면 새로 생성시까지 기다려야 함
◆ 이벤트 동기화 방식(Event Synchronous)
- 사용자의 인증 요청이 있을 때마다 서버와 OTP 토큰에서 카운터를 증가시켜가며, 이 카운터값을 OTP 생성 알고리즘의 입력값으로 사용
- 시간 동기화는 불필요하지만 OTP 생성 후 인증에 사용하지 않은 경우 카운터값이 달라진다는 문제점이 존재
- 장점: ①시간 동기화 방식에 비해 사용이 간편 ②호환성 높음
- 단점: ①카운터값 동기화 필요
◆ 기타 OTP 방식
- S/KEY 방식: 일회용 암호 시퀀스(해시함수 사용) 기반, 사용자가 복잡한 암호화 시스템에 의존하지 않고 자신을 인증, 유닉스 운영체제에서 사용
- 거래 연동 OTP: 계좌번호나 송금액 등 거래정보와 연계하여 해당 거래에만 유효한 정보로 인증
(4) 개체(생물학적) 특성 기반 인증
1) 장점 및 단점
- 장점: ①사용 간편 ②잊어버리거나 손실하거나 도난될 위험 없음 ③위조 어려움 ④대여 불가능
- 단점: ①판단 모호성이 존재 ②관리 어려움 ③인증을 위한 임계치 설정이 어려움
2) 생체인증 기술 평가항목
- 보편성: 모든 사람이 가지고 있는 생체특징인가?
- 유일성: 동일한 생체특징을 가지고 있는 타인은 없는가?
- 지속성: 시간에 따른 변화가 없는 생체특징인가?
- 획득성: 정량적으로 측정가능한 생체특징인가?
- 성능: 환경변화와 무관하게 높은 정확성을 얻을 수 있는가?
- 수용성: 사용자의 거부감은 없는가?
- 반 기만성: 고의적인 부정사용으로부터 안전한가?
3) 생체인증 기술 유형비교
- 행동학적 특징 이용: 서명, 음성, 키보드 리듬, 키 스트로크 인식 등
- 생체적 특징 이용: 지문, 얼굴, 망막, 홍채, 정맥, 손모양 등
4) 생체인증 기술 도입 시 선결과제
- 오거부율(FRR, False Rejection Rate): 등록된 사용자를 거부하는 비율
- 오인식률(FAR, False Acceptance Rate): 등록되지 않은 사용자를 등록된 사용자로 오인하는 비율
- FRR 높으면 보안수준 높은 것, 높은 보안 성능을 유지하기 위해서는 FRR보다 FAR의 성능이 중요, FAR이 높으면 위험
- 교차 오류율(CER, Crossover Error Rate): FRR과 FAR이 일치하는 지점, 표준 평가 지점, 낮을수록 정확
- 속도 및 처리량: 일반적인 생체인증 기술 처리속도는 느리고 처리량은 낮은 수준이므로 속도 고려 필요
- 수용성: 개인 프라이버시, 심리적·신체적 편리함 고려 필요
- 위조 저항성: 생체특징 위조 저항 고려 필요
5) KISA 공인인증 가이드라인 요구사항
- 루팅, 탈옥 등 스마트폰이 불법 변경된 환경에서는 모든 저장소에 접근 가능하기 때문에 물리적으로 독립된 안전한 하드웨어 저장소 활용을 권고
- 비밀번호, 생체정보 등 전자서명생성정보 접근을 위한 로컬인증 실패시 횟수를 제한해야 한다.
- 스마트폰 내 지문인식 장치의 FAR은 1/50000 을 지원하여야 하며, FRR은 2~3% 이하를 지원하여야 한다.
- 위조지문 등 스마트폰 내 지문인식 장치의 취약점이 발견되는 즉시 보안조치가 이루어져야 한다.
- TEE(신뢰된 실행 환경) 클라이언트와 TA(신뢰된 애플리케이션)는 신뢰된 상호인증을 수행할 것을 권고
(5) 통합 인증 체계(SSO, Single Sign On)
1) 개요
- 한번의 시스템 인증을 통하여 접근하고자 하는 다양한 정보시스템에 접근할 수 있도록 하는 통합 로그인 솔루션
- 장점: ①사용자 편의성 증가 ②보안성 강화 ③중앙 집중식 사용자 관리를 통한 효율성 ④운영비용 감소
- 단점: ①SSO가 단일실패지점에 해당 ②SSO 개발 및 운영비용 발생 ③각 개별 리소스에 대한 세분화된 권한 관리 어려움 ④복잡성 증가에 따른 보안 관리자의 업무 부담
2) 구성요소
- IdP(중앙 인증 서버): 자격증명을 기반으로 사용자 인증, 사용자 ID 관리
- 사용자 저장소 또는 디렉토리: 사용자 이름, 비밀번호 등 사용자 계정 정보를 저장하는 저장소, 인증을 위해 필요한 정보를 IdP에 제공, LDAP·AD 등 존재
- User Agent: SSO 시스템과 상호작용하는 클라이언트측 구성요소
3) 예시
◆ Kerberos
- 분산 환경을 위한 SSO 기술
- Needham-Schroeder 프로토콜 원칙 기반으로 만들어짐
- 비밀 키 기반 인증 프로토콜
- 비밀키 및 MAC 등 암호화 기술 사용하여 기밀성과 무결성 보장하며 SSO의 장단점 가짐
- 구성요소
> KDC(키배포센터): 사용자 인증을 위해 티켓과 세션 키 발행. AS와 TGS로 구성
> AS(인증서버): 사용자가 리소스 접근을 위해 AS에 인증 요청하고 AS는 자격증명 확인하여 신원 확인하고 TGT와 사용자 비밀키를 사용하여 암호화된 세션키 생성
> TGS(티켓 부여 서버): 사용자는 TGT를 TGS에 제시하고 원하는 리소스에 대한 티켓 요청, TGS는 세션키로 암호화된 서비스 티켓 발행
> TGT(티켓): 사용자에 대한 신원과 인증을 확인하는 토큰. 통신 필요할 때마다 패스워드 입력하지 않도록 하는 기능
> Client
- 장점: ①데이터 기밀성 및 무결성 보장 ②SSO ③타임스탬프를 통한 재전송 공격 예방
- 단점: ①KDC가 단일실패지점이 될 수 있음 ②패스워드 사전공격 등에 취약 ③타임스탬프를 위한 시간 동기화 프로토콜 필요
◆ SESAME
- 대칭 및 비대칭 암호 기반 인증 프로토콜
◆ SPENGO
- Microsoft에서 개발하고 주로 Windows 환경에서 사용되는 인증 프로토콜
※ EAM(Extranet Access Management)
- 인트라넷엑스트라넷 및 일반 클라이언트/서버 환경에서 사용자 인증과 자원에 대한 접근 권한 관리하는 통합 인증 관리 솔루션
- 사용자에게 역할을 부여하고 역할을 자원에 매핑함으로서 권한 관리
- 장점: ①SSO ②서비스 편의성 ③운영비 절감 ④보안 강화
3. 접근통제 보안모델
(1) 접근통제 모델
1) 강제적 접근통제(MAC, Mandatory Access Control)
- 주체·객체 등급 기반으로 권한 부여
> 모든 주체와 객체에 관리자가 부여한 보안레이블이 부여됨
> 주체의 레이블과 주체가 접근하고자 하는 객체의 레이블을 비교
- 장점: ①중앙 집중식 제어 ②안정적이고 신뢰 가능
- 단점: ①사용자 불편 ②성능 저하 우려 ③구현 및 운영 복잡성 ④고가의 비용
- 적용 예: 군사 시스템, SELinux
2) 임의적 접근통제(DAC, Discretionary Access Control)
- 접근주체 신분 기반으로 권한 부여
> ACL: 주체가 객체에 대하여 특정 작업을 수행하는 데 필요한 권한을 가지고 있는지 여부를 확인
- 장점: ①유연성 ②쉬운 구현
- 단점: ①트로이 목마·멀웨어에 취약 ②신분 도용에 대한 통제방법 부재
- 적용 예: 홈 네트워크, 소기업, Linux 디렉토리 및 파일시스템 퍼미션
3) 역할기반 접근통제(RBAC, Rule-Based Access Control)
- 주체, 객체 역할 기반으로 권한 부여
- 비 임의적 접근통제 모델, 임무기반 접근통제 모델
- 장점: ①최소권한 원칙 적합 ②직무분리 원칙 준수 ③데이터 추상화 ④효율적인 관리
- 적용 예: 의료 시스템, 전자상거래 플랫폼
(2) 보안 모델
1) 정보흐름 모델
- 한 보안수준이 다른 보안수준으로 이동하는 것을 포함하는 모든 종류의 정보흐름을 다룬다.
- 은닉채널이 존재하지 않는다는 것을 보장하는 방법에 대한 규칙을 만든다.
2) 상태머신 모델
- 시스템 내의 활동에 상관없이 시스템이 스스로를 보호하고 불안정한 상태가 되지 않도록 하는 모든 컴퓨터에 적용되는 관념적 모델
- 시스템은 상태천이를 통해 안전한 상태를 유지
- 모든 보안모델에 기본적으로 적용
3) 벨라파듈라 모델(BLP, Bell-LaPadula Confidentiality Model)
- 정의: ①MAC에 해당 ②기밀성을 집행하는 상태머신 모델이며 정보흐름 모델 ③다중등급 보안정책에 대한 최초의 수학적 모델
- 보안 규칙:
> No read up(주체는 높은 보안수준의 객체 읽기 불가)
> No write down(주체는 낮은 보안수준의 객체 쓰기 불가)
- 장점: 기밀성 유지에 강함
- 단점: 무결성과 가용성 고려하지 않음
4) 비바 무결성 모델(Biba Integrity Model)
- 정의: ①MAC에 해당 ②무결성을 위한 상업용 모델 ③상태머신 모델이며 최초의 수학적 무결성 모델 ④비인가자에 의한 데이터 변형 방지만 취급
- 보안 규칙:
> No write up(주체는 높은 수준의 객체 쓰기 불가)
> No read down(주체는 낮은 수준의 객체 읽기 불가)
> 호출 속성(주체는 높은 무결성 수준의 주체에게 서비스 요청 불가)
5) 클락-월슨 무결성 모델(Clark-Wilson Integrity Model)
- 정의: ①MAC에 해당 ②무결성 중심의 상업적 모델(무결성 3가지 목표 제시)
- 무결성 모델 목적: ①허가되지 않은 사용자로부터 수정 방지 ②허가된 사용자의 부적절한 수정 방지 ③내외부 일치성 유지
- 금융·회계 데이터 무결성 보장을 위해 사용됨
6) 만리장성 모델(CWM, Chinese Wall Model, Brewer-Nash Model)
- 정의: ①MAC에 해당 ②정보흐름 모델 기반으로 사용자의 이전 동작에 따라 변화할 수 있는 접근통제를 제공
4. 접근통제 보안위협 및 대응책
(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 ③통제구역