[FIDO UAF] 생체 인증의 개념과 필요성

SSY·2023년 11월 17일
0

Security

목록 보기
1/7
post-thumbnail

1. 시작하며

인증 방식은 크게 3가지가 있다. 하나는 지식 기반 인증 방식(Something You Know), 다른 하나는 소유 기반 인증 방식(Something You Have), 마지막 하나는 생체 기반 인증 방식(Something You Are)이다. 지금 말한 순서대로 인증방식을 선택하고 진화해왔다. 그리고 각각의 인증방식은 문제점들이 있고, 이를 해결하기 위해 다음 인증 방식들이 나왔다.

2. Something You Know

지식 기반 인증방식이라 불린다. 대표적인 예로, 비밀번호와 패턴을 들 수 있다. 이 비밀번호의 특징은 사용자가 기억해야 한다는 점이다. 하지만 이는 치명적인 문제가 하나 존재하는데, 인간은 인지적 구두쇠여서 각 서비스들마다 비밀번호가 매우 비슷하거나 완전히 동일하다는 것이다.

따라서 해커들은 이 점을 노리고, Social 해킹을 시도한다. 공개된 메신저와 같은 곳에서 사용자의 정보를 쉽게 알아낸다. 이름, 생년월일, 성별, 기념일 등... 그리고 인간은 이런 기념비적인 사건들을 비밀번호로 설정하기에 해커들은 이런 정보들의 경우의 수를 무수히 많이 만들어서 해킹을 시도한다.

또 다른 문제는 트로이 목마와 같은 Malware의 문제들이다. 사용자의 컴퓨터에 악성 Malware가 깔리면, 사용자가 타이핑하는 개인정보를 해커는 옵저빙한다. 그리고 이 정보들을 통해 중요 공공 기관이나 금융 계정에 로그인을 할 수도 있다. 일례로, 예전 2002년도 메이플 스토리때는 계정 로그인 방식이 단순 비밀번호 방식이었다. 그리고 이때 무수히 많은 계정들이 털리는 일도 있었고, 심지어 피시방에서 메이플 스토리를 하지 말아라 라는 말까지 있을 정도였다.

또한 중간자 공격에도 취약하다. 만약 SSL로 보안설정되지 않은 http통신일 경우, 해커들은 이때의 RequestBody를 가로채는 경우도 비일비재 하다.

3. Something You Have

소유 기반 인증 방식이라고 불린다. 사용자가 고유하게 가지고 있는 물건을 기반으로 1회용 비밀번호를 발급받는걸 말한다. 대표적인 예로 OTP가 있다.

1회용 비밀번호이니 안전해 보이지만 가짜 웹사이트나 앱을 통한 공격(=Phising)의 경우 안전하지 않다. 해커들은 이런 가짜 어플리케이션을 배포한다. 그 후, 이를 모르는 사용자들은 이 곳에서 무수히 많은 로그인을 할 것이고, 해커들은 이를 실시간 옵저빙 및 정보 탈취를 감행한다.

대표적인 예가 코인원 사건이다. 해커가 가짜 코인원 사이트를 만든다. 이를 모르는 사용자들은 가짜 코인원 사이트에 로그인 및 각종 정보를 입력한다. 이때, OTP의 경우는 1회성 비밀번호여서 그 한 순간의 타이밍이 매우 중요한데, 해커들은 이때 실시간 옵저빙을 통해 진짜 코인원 사이트에 로그인을 한다. 그리고 거액의 돈을 출금하였다.

결국, OTP와 같은 1회용 비밀번호를 발급받는 인증 수단도 Phising공격에 안전하지 않다는 것이다.

4. Something You Are

생체 기반 인증 방식이라고도 불리며, 사용자가 항상 고유하게 몸에 지니고 있는걸 수단으로 인증하는걸 말한다. (인체가 절단되지 않는 한?) 이는 안면, 홍채, 지문, 목소리 등이 있다. 특별한 사건이 있지 않은 이상 이런 기관을 통하여 인증을 진행한다.

항상 사용자가 지니고 있는 기관이기에 기억할 필요가 없다. 뿐만 아니라, Phinsing공격에도 안전하다고 볼 수 있다. 그 이유는, 생체 인증 기반의 FIDO UAF 인증방식에선 사용자의 생체 정보를 서버로 일절 보내지 않으니 말이다. (추후 설명하겠지만 PKI 방식을 사용한다.) 따라서 사용자가 가짜 웹사이트나 웹을 만든다고 할지라도 서버로 사용자의 생체 정보를 가로챌 수 없기에 안전하다고 볼 수 있다.

5. Something You Are이 안전한 이유?

결론부터 말하자면, PKI 인증 방식을 사용하기 때문이다. 이는 Public Key Infrastrucrure의 약자로, 공개키 기반의 신뢰할 수 있는 거대 시설을 사용하여 인증하는 방식을 의미한다.

추후 자세히 설명하겠지만, 신뢰할 수 있는 기관이란 공식적으로 인증받은 CA 기관을 의미한다. 통신할 때, 이 CA 기관으로부터 발급받은 인증서를 사용해야만 '신뢰할 수 있는 통신'인 것이고, 그게 아닐시, '신뢰할 수 없는 통신'이다.

[사설 인증서를 사용했을 경우]
해당 인증서에 포함되어 있는 Root CA를 검색 및 검증하는 절차에서 실패한 경우

[공인 인증서를 사용했을 경우]
해당 인증서에 포함되어 있는 Root CA 검색에 성공하고 체인 검증하는 절차까지 성공한 경우

FIDO UAF는 이러한 PKI 방식을 사용한다고 했다. 그 말은 즉슨, FIDO UAF 통신시, 신뢰할 수 있는 CA 기관이 있다는 것이다. 그리고 그 CA 기관이 바로 FIDO CA이다. 이 기관으로부터 인증받은 인증서와 이를 서명한 Root 인증서는 추후, MDS에 쌓이고 이를 사용하여 검증하며, 신뢰성을 보장받게 된다.(추후 설명함)

6. 마치며

지식, 소유 기반 인증 방식의 단점에 대해 알아보았고, 왜 생체 기반 인증 방식이 나왔는지 다루었다. 다음 글에선 생체 기반 인증 방식을 가능하게 해주는 PKI 방식에 대해 알아보고, SSL 체인 검증 시스템에 대해 알아본다. 그 후, 이 지식을 기반으로 FIDO UAF 통신 방법에 대해 알아보려 한다.

ps. 참고

fido 컨퍼런스 : https://www.youtube.com/watch?v=eXeAB8gCBiw
FIDO 기본 개념 : https://m.blog.naver.com/aepkoreanet/221510427704
SSL 개념과 서명 & 검증 원리 : https://m.blog.naver.com/alice_k106/221468341565

profile
불가능보다 가능함에 몰입할 수 있는 개발자가 되기 위해 노력합니다.

0개의 댓글

관련 채용 정보