Security

[Security] 사용자 인증 방식 및 원리

구루싸 2020. 2. 23. 20:08
반응형
SMALL

이번에는 사용자 인증 방식 및 원리에 대해 알아보겠습니다

사용자 인증 방식은 크게 지식 기반 인증·소유 기반 인증·존재(생체) 기반 인증·행동 기반 인증·커버로스 인증으로 나눠볼 수 있는데요

먼저 지식 기반 인증은 사용자의 기억으로만 인증하는 방식으로 패스워드, Pin 번호 등이 있습니다

패스워드는 많이 사용되는 인증 방식인데 인증 요소 중에서 가장 안전하지 않는 방식입니다

더 높은 수준의 보호가 이루어지도록 하는 데 필요한 보안 인식 훈련을 받지 않아 문제가 발생하고

패스워드 전송 시에 암호화하지 않으면 전송 구간 중에 스니핑 툴로 도청이 가능합니다

안전하지 않은 방식이니 만큼 안전해지도록 하는 정책이 필요한데 정책들을 정리해보면 다음과 같습니다

최소 8문자 이상으로 대소문자, 숫자, 특수문자를 조합하여 구성한다
책임 추적성 성립이 어렵기 때문에 공유되어서는 안된다
신규 사용자를 생성한 후 처음 로그인 시 반드시 새로운 패스워드를 변경하도록 강제 적용한다
로그인 정보(날짜, 시간, 사용자 ID, OS)에 대해 정확한 감사 기록이 유지되어야 한다
시스템은 실패한 로그인 횟수를 제한하도록 임계치(Clipping level)를 설정한다
마지막 로그인 시간을 보여준다
휴면 계정은 사용 불가/삭제, Password는 저장소에 One-way 암호화를 수행한다

패스워드 공격 기법을 아래에 표에 정리하였습니다

기법 내용
무차별 대입 공격(Brute-force attack) 임의의 값을 반복적으로 입력하여 패스워드를 크랙(John the Ripper, hydra)
사전 공격(Dictionary attack) 사전의 용어를 반복적으로 입력하여 패스워드를 크랙
트로이 목마 프로그램 정상적인 프로그램으로 가장한 정보 유출
사회 공학적 공격 심리적 공격 방법
전자적 모니터링 패스워드 입력 시 또는 전송 시에 스니핑(Sniffing)하여 훔침

다음으로 열쇠와 같은 소유 기반 인증 방법에 대해 알아보겠습니다

소유 기반 인증 방법은 대표적으로 OTP(One Time Password)와 스마트 카드(Smart Card)가 있습니다

OTP는 OTP 단말기를 소유하고 매번 다른 패스워드를 생성하기 때문에 소유 기반 인증으로 분류됩니다

스마트 카드는 마이크로프로세스 칩과 메모리를 내장한 일종의 소형 컴퓨터이며 높은 보안성이 요구됩니다

메모리 토큰과 달리 프로세스 능력을 가졌으며 Global Standard가 부족하며

무선 통신에 의해서 발생하는 공통적인 문제점인

동일한 무선 주파수를 복제하여 그대로 전파를 보내면 카드가 동작하는 취약점이 존재합니다

간단하게 스마트 카드의 구성요소를 살펴보고 존재(생체) 기반 인증에 대해 알아보겠습니다

구성요소 내용
CPU(Microprocessor) 산술 및 사칙 연산, 논리 연산을 수행하는 연산 장치
ROM 운영체제(Chip OS) 탑재, 보안 알고리즘(3DES), 카드 제작 시 저장하고 변경 불가
RAM 임시 데이터 저장용(4Kbyte) 저장
EEPROM 파일 시스템, 프로그램 및 응용 프로그램 키, 비밀번호, 카드 발급 시 저장
I/O 시스템 접촉식과 비접촉식, 2가지 동시 지원 콤비형

생체 인증(Biometrics)는 평생 불변의 특성을 지닌 생체적(지문, 장문, 홍채, 망막 등),

행동적(서명, 음성, 키보드 입력 등) 특징을 자동화된 수단으로 등록하여

사용자가 제시한 정보와 패턴을 비교(검증)한 후 인증하는 기술입니다

생체 인증의 특징은 다음과 같습니다

특징 내용
보편성(University) 모든 사람들이 보편적으로 지니고 있어야함
유일성(Uniqueness)/특수성(Distinctiveness) 개인별로 특징이 명확히 구분되어야 함
지속성(Permanence)/영구성(Persistence) 개인의 생체 정보는 지속/영구적이어야 함
성능(Performance) 개인 확인 및 인식의 우수성, 시스템 성능
수용성(Acceptance) 거부감이 없어야 함
저항성(Resistance) 위조 가능성이 없어야 함

생체 기반 인증은 생체 인증의 생체적 특징을 인증 수단으로 사용한 것이고

행동 기반 인증은 생체 인증의 행동적 특징을 인증 수단으로 사용한 것입니다

행동 기반 인증은 개인의 행위 정보를 평상 시에 축적하여 프로 파일 정보를 구축해야 합니다

그렇지 않으면 행동 패턴 분석을 할 수 없겠죠?-_-

마지막으로 커버로스(Kerberos) 인증에 대해 알아보고 마치도록 하겠습니다

커버로스 인증은 중앙 집중형 사용자 인증 프로토콜(RFC1510)로

대칭키 암호화 기법에 바탕을 둔 티켓 기반 인증 프로토콜입니다

3A(Authentication(인증), Authorization(인가), Accounting(과금))를 지원하기에 AAA 서버라고도 부릅니다

커버로스의 구성 요소와 동작 원리를 간단히 살펴보도록 하겠습니다

구성요소 설명

키 분배 센터

(KDC:Key Distribution Center)

TGS + AS로 구성되며 사용자와 서비스 암호화 키(비밀키)를 유지하고 인증 서비스를 제공하며 세션 키를 만들고 분배

인증 서비스

(AS:Authentication Service)

실질적 인증 수행

티켓 부여 서비스

(TGS:Ticket Granting Service)

티켓을 만들고 세션 키를 포함한 Principals에 티켓을 분배하는 KDC의 한 부분
Principals 인증을 위하여 커버로스 프로토콜을 사용하는 모든 실제를 이르는 말
Ticket 인증 토큰

커버로스 동작 원리

① 사용자는 인증 서비스(AS)에 인증을 한다

② 인증 서비스는 사용자에게 시작 티켓을 전송한다

③ 사용자는 서비스 접근 요청을 한다

④ 티켓 부여 시스템(TGS)은 세션 키가 포함된 새로운 티켓을 만든다

⑤ 사용자는 하나의 세션 키를 추출하고 티켓을 파일 서버로 전송한다

⑥ 티켓을 받은 서버는 사용자에 대한 서비스 제공 여부를 결정한다

참고로 커버로스는 타임 스탬프(Time Stamp)를 통해

기존 티켓을 재사용해서 공격을 수행하는 재생 공격(Reply Attack)을 방지합니다

 

이것으로 오늘의 학습을 마치도록 하겠습니다

그럼 이만-_-

반응형
LIST