외로운 Nova의 작업실

정보보안기사 필기 - 8(사용자 인증) 본문

Certification/정보보안기사

정보보안기사 필기 - 8(사용자 인증)

Nova_ 2022. 11. 4. 14:37

- 사용자인증과 개인 식별

사용자 인증 : A가 B에게 자신의 신원을 증명하고 B는 C에게 A인척 가장하여 증명할 수 있는 인증

개인 식별 : A가 B에게 자신의 신원을 증명하지만 B는 C에게 A인척 가장하여 증명할 수 없는 인증

 

- 사용자 인증의 유형

type1(지식) : 본인이 알고 있는 것을 보여줌으로서 신원을 증명합니다. ex)패스워드

type2(소유) : 본인이 가지고 있는 것을 보여줌으로서 신원을 증명합니다. ex)토큰

type3(존재) : 본인임을 나타내내어 신원을 증명합니다. ex)지문

type3(행위) : 본인이 하는 것을 보여주어 신원을 증명합니다. ex)서명, 움직임

Two factor : 위 타임중 두가지 인증 메커니즘을 결합하여 신원을 증명합니다.

multi factor : 가장 강한 인증으로 세가지 이상의 메커니즘을 결합하여 신원을 증명합니다.

 

- type1 지식 기반 인증(사용자 인증)

<고정된 패스워드>

가장 간단하면서 오랫동안 사용된 개체인증 방법으로서 고정된 패스워드와 일회용 패스워드로 구분할 수 있다.

  • 첫번쨰 방법 : 파일에 사용자 아이디를 정렬하여 그에따른 패스워드를 평문 형태로 저장해놓습니다.
  • 두번째 방법 : 패스워드를 평문으로 저장하지 않고 패스워드의 해시값을 저장합니다.
  • 세번째 방법 : 패스워드 솔팅이라고 부르며 패스워드로 사용할 문자열이 생성되면 솔트를 패스워드에 붙여 해시값을 계산해 저장합니다.

<일회용 패스워드>

일회용 패스워드는 동적 패스워드라고도 불리며 오직 한번만 유효한 패스워드입니다.

  • 첫번째 방법 : 사용자와 시스템이 패스워드 목록에대해 합의하여 목록상의 각 패스워드를 한번씩 사용하는 방법입니다.
  • 두번째 방법 : 사용자와 시스템은 현재 패스워드를 이용해서 다음 패스워드를 생성하기로 합의하여 사용하는 방법입니다.
  • 세번째 방법 : 사용자와 시스템은 해시함수를 사용하여 카운터(해시함수 반복횟수)에 대해 동의하여 해시함수를 반복적으로 사용하여 패스워드를 생성하는 방법입니다.

<i-PIN>

인터넷 상에서 주민번호 대신에 아이디와 패스워드를 이용하여 본인 확인을 하는 수단입니다. 아이핀을 이용하면 웹사이트에서 더이상 주민번호를 이용하지않아도 회원가입 및 기타 서비스 이용을 가능하게해줍니다.

 

<패스워드의 안전성>

패스워드는 패스워드의 길이가 길수록(S), 패스워드의 사용 기간이 짧을 수록(L), 사용빈도가 낮을수록(R) 패스워드를 추측하기 어렵습니다. P(패스워드 추측확률) = L * R / S

 

- type1 지식 기반 인증(개인 식별)

<시도 응답 개인 식별 프로토콜>

이 프로토콜은 어떤 실체가 자신의 신분을 다른 실체에게 증명하기 위하여 자기 자신만이 소유하고 있는 어떤 비밀 정보를 자신이 알고 있다는 사실을 간접적으로 보여주는 프로토콜입니다. 예를들어 보안카드가 있습니다.

  • 일방향 개인 식별 프로토콜 : 서버가 클라이언트를 식별하거나, 클라이언트가 서버를 식별하거나 오직 한 대상을 식별하는 프로토콜을 말합니다.
  • 상호 개인 식별 프로토콜 : 서버가 클라이언트를 식별하고, 클라이언트는 서버를 식별하는 상호간의 식별을 하는 프로토콜을 말합니다.

<영지식 개인 식별 프로토콜>

자신의 비밀 정보를 서버에게 제공하지 않고 자신의 신분을 증명하는 방식을 영지식 개인 식별 프로토콜이라고 합니다.

 

- type2 소유 기반 인증

<메모리 카드>

메모리카드는 정보를 저장할 수 있지만 정보를 처리할 수 는 없습니다. 대부분 흔하게 볼 수 있는 카드는 신용카드입니다.

 

<스마트카드>

스마트카드는 정보를 저장하고 정보를 처리할 수 있습니다. 집적회로가 내장되어있기에 장비보호 기능이 있어야합니다.

 

<일회용 패스워드(OTP, one time password)>

OTP용 프로그램에서 사용자 비밀번호와 일회용 비밀번호 생성용 입력값을 입력하면 암호 알고리즘을 사용해서 일회용 패스워드를 생성하는 사용자 인증 방법입니다. OTP 생성 및 인증 방식에는 질의응답방식과 시간과 이벤트 동기화 방식, S/KEY 방식이 있습니다.

  • 질의 응답 방식 : 인증서버는 사용자에게 시도라고도 부르는 임의 값을 보내고 사용자는 임의값을 토큰장치에 입력하여 인증을 실행합니다.
  • 시간 동기화 방식 : 토큰 잧이와 비밀키에 나타나는 시간값을 OTP를 생성하는데 사용합니다.OTP 생성 매체와 인증서버의 시간 정보가 동기화 되어있어야 합니다.
  • 이벤트 동기화 방식(계수기 동기화 방식) : 토큰 장치의 버튼을 누르면 인증 서버의 계수기 값에따라 인증값이 생성됩니다.
  • S/KEY 방식 : 벨 통신 연구소에서 개발한 OTP 생성 방식으로, 첫번째 비밀키는 클라이언트에서 정하고 그 첫번째값으로 하여 해시 체인 방식으로, 이전 결과값에 대한 해시값을 구하는 작업을 n번 반복하여 n개의 OTP를 서버에 저장하여 사용합니다. 

- type3 개체 특성 기반 인증

<생체인증>

생체인증은 생체적 특성을 측정하여 인증하는 방법으로 태생적으로 가지고 있는 것에 의한 인증입니다. 예를 들어 지문, 얼굴인식 등이 있습니다. 아래는 생체 인증 기술의 평가항목입니다.

  • 보편성(universality) : 모든 사람이 가지고 있는 생체특징인지
  • 유일성(uniqueness) : 동일한 생체 특징을 가진 타인은 없는지
  • 지속성(영구성, oermanence) : 시간에 따른 변화가 없는 생체 특징인지
  • 획득성(collectability) : 정량적으로 측정이 가능한 특성인지
  • 성능(performance) : 환경변화와 무관하게 높은 정확성을 얻을 수 있는지
  • 수용성(acceptability) : 사용자의 거부감이 없는지
  • 반기만성(anti-circumventuin) : 고의적인 부정사용으로부터 안전한지

생체인증의 시스템이 보안을 높이기위해 민감하게 작동하면 인가되어야하는 사람도 거부를 하는 오거부율이 높아집니다. 반대로, 오거부율을 낮추기위해 시스템의 민감도를 낮추면 비인가되어야하는 사람을 인가하는 오인식률이 높아집니다. 오거부율을 FRR(false rejection rate)라고하며 오인식률은 FAR(false acceptance rate)라고 합니다.

- 통합 인증 체계(SSO, single sign on)

한 번의 시스템 인증을 통하여 접근하고자 하는 다양한 정보시스템에 재인증 절차없이 접근할 수 있도록 하는 통합 로그인 솔루션을 통합 인증 체계라고 합니다. 

 

<SSO의 구성요소>

  • 사용자 : 로그인 시도를 하는 사람
  • 인증 서버 : ACL을 통한 통합 인증 서버
  • LDAP(Lighweight directory access protocol) : 네트워크상의 자원을 식별하고 사용자와 애플리케이션들이 자원에 접근할 수 있도록 하는 네트워크 디렉터리 서비스
  • SSO Agent : 각 정보시스템에 자동인증 정보 송수신 진행

<SSO의 특징>

SSO 개발 및 운영비용이 발생하나 홈페이지의 운영비용이 감소하며 보안성이 강화되며 사용자의 편의성이 증대됩니다. 하지만 SSO 서버는 단일실패지점으로 해킹이된다면 전체시스템이 위험합니다.

 

<최근 SSO의 발전>

  • 엑스트라넷 접근 관리(EAM, Extranet access management) : 하나의 아이디와 암호 입력으로 다양한 시스템에 접근할 수 있고 각 ID에 따라 사용 권한을 차등 부여하는 통합 인증과 권한 관리 시스템입니다.
  • 식별/접근 관리(IAM, identity and access management) : EAM을 확장 보완한 시스템입니다.

- 커버로스(Kerberos)

1980년대 중반 MIT의 Athena 프로젝트의 일환으로 개발된 것으로 대칭키 암호기법에 바탕을 둔 티켓 기반 인증 프로토콜이며 동시에 KDC입니다. 커버로스는 SSO의 한 예시이며 혼합 네트워크를 위한 사실상의 표준입니다. 광범위한 보안 능력을 통합하며 많은 유연성과 확장성이 있습니다. 특히 기업의 접근 통제를 위한 네가지 요소 확장성,투명성,안정성,보안을 가집니다. 

 

<커버로스의 구성요소>

  • KDC(key distribute center) : 키 분배서버로 TGS와 AS로 구성되어있습니다.
  • AS(authentication service) : 실질적인 인증을 수행하는 서버입니다.
  • TGS(ticket granting service) : 티켓을 부여하고 분배하는 서버입니다.
  • Ticket : 사용자에대해 신원과 인증을 확인할 수 있는 토큰이며 사용자가 다른 주체들과 통신이 필요할때마다 패스워드를 입력하지 않게 도와줍니다.
  • principals : 인증을 위하여 커버로스를 사용하는 모든 실체

<커버로스 사용 방법>

  1.  커버로스는 모슨 사용자의 패스워드를 알고있고 AS에 저장됩니다.. AS는 각 서버와 유일한 비밀키를 공유합니다.
  2.  TGS는 AS에게 인증 받은 사용자에게 티켓을 발행합니다. 그래서 사용자는 우선 AS에게 티켓 승인 티켓을 받습니사용자 워크스테이션의 클라이언트 모듈은 이 티켓을 보관합니다.
  3.  사용자가 새 서비스를 요청할때마다 클라이언트는 티켓 승인 티켓을 이용하여 TGS에 접속하여 티켓을 발행 받습니다.
  4. 클라이언트는 서비스-승인 티켓을 보관하고 특정 서비스가 필요할때마다 티켓을 사용하여 서버에게 인증합니다.
  5. 타임스탬프를 따로 사용하여 시간제한을 두어 다른사람이 티켓을 복사하여 나중에 그 사용자인 것처럼 위장하여 티켓을 사용하는 것을 막습니다.

<커버로스의 취약점>

  • KDC는 실패 단일 지점이될 수 있어서 해킹이된다면 큰 피해를 입을 수 있습니다.
  • 비밀키는 사용자의 워스테이션에 임시로 저장되며 이것은 침입자가 암호화된 키를 획득하는 것이 가능하다는 것을 의미합니다.
  • 커버로스는 패스워드 추측 공격에 취약하여 이를 방지할 수 있는 보호를 제공해야합니다.

<커버로스 버전 4와 5의 차이점>

  • 버전 5 티켓의 수명이 더깁니다.
  • 버전 5 티켓의 갱싱ㄴ이 가능합니다.
  • 버전 5는 모든 대칭키 알고리즘을 수용합니다.
  • 버전 5는 데이터 유형을 기술하는데 다른 프로토콜을 사용합니다.
  • 버전 5는 4보다 오버헤드를 더 많이 필요로합니다.

 

- 세사미(SESAME)

세사미는 커버로스의 기능을 확장하고 약점을 보완하기위해 개발된 기술로 대칭 및 비대칭 암호화 기법을 사용하여 인증서비스를 제공합니다.

Comments