보안 끝판왕 Yubikey 사용법 및 후기 (유비키 5C NFC)

유비키(Yubikey)를 드디어 구매해 후기까지 쓰게 되었습니다. 그동안 보안을 위해 강조해왔던 MFA(Multi-Factor Authentication; 다중인증)는 옵션이 아닌 필수가 되었습니다. 저의 경우 지금까지 OTP 하나를 추가한 2FA(이중인증) 설정만으로도 계정이 털린적은 단 한번도 없었습니다. 거기에 더 확실한 보안 옵션을 추가하고 싶다면? 물리적 보안키인 Yubikey는 전세계적으로 인증받은 최고의 보안 솔루션 입니다.

해커가 악성코드 및 백도어를 통해서 내 모든 비밀번호와 실시간으로 2차 인증까지 훔칠 수 있는 최악의 상황을 가정해봅시다. 그런 상황에서도 Yubikey를 인증 수단으로 등록해놨다면 키를 실제로 손에 쥔 나 이외에는 그 누구도 접근이 불가능하고, 키 복제 또한 불가능 합니다.


유비키 제조사 Yubico는 어떤 기업?

Yubico는 2007년 스웨덴에서 설립되었습니다. 그리고 4년뒤인 2011년에 CEO이자 설립자인 Stina 그리고 최고 혁신 책임자이자 공동 설립자인 Jakob 두 사람은 실리콘 밸리로 이사해 본격적으로 이 사업을 진행하게 되었습니다. (두 사람은 부부예요)

유비키(Yubikey)는 두사람의 대화로부터 시작되었습니다. 자신의 은행 계좌가 안전하다고 믿었던 아내 Stina와 하루만에 해킹할 수 있다고 이야기한 보안 전문가이자 화이트 해커였던 남편 Jakob. 아내는 다음날 보안 헛점에 대해 이야기 해주기 위해 은행에 연락했고 더 나은 보안 솔루션이 필요하다는 판단한 것이 첫 발걸음이 되었습니다.(#)

보고서를 가지고 은행과 접촉했지만 은행도 고객도 새로운 시도를 거부했고, 결국 미국의 한 인터넷 보안 회사가 샌프란시스코에서 열린 보안 무역 박람회에 초대했고 그곳에서 운좋게 기회를 얻게 되었습니다. (확실히 미국이 기회의 땅인듯…)

2014년에 FIDO(Fast IDentity Online) 표준 첫번째 Yubikey USB 토큰이 세상에 모습을 드러냈습니다. FIDO2에서도 가장 신뢰성 있는 인증자 입니다.

컴퓨터 로그인(윈도우, MacOS, 리눅스) / Github / 패스워드 매니저(Bitwarden, LastPass, 1password, dashlane, Keepass 등등) / OpnePGP / 구글, 페이스북 등 계정 / Dropbox / 등 유명 기업의 서비스 뿐 아니라 보안에 있어 가장 엄격하다고 할 수 있는 미국 정부에서도 사용중이며 반대로 북한, 중국, 러시아, 이란, 쿠바 등 국가에서는 구매할 수 없습니다.

홍콩 민주화 운동이 한창이던 2019년 10월 10일 Sherry Chan Yuen-yung이란 사람이 페이스북 게시물로 Yubico에게 보안키 요청을 한적이 있었습니다. 중국이 오프라인 뿐 아니라 온라인에서도 반대세력을 찾아내 소탕하기위해 엄청난 노력을 했으니까요. 이에 유비코는 500개의 유비키를 보내줬습니다.

이 외에도 각종 NGO 및 사회단체들에게 유비키를 많이 뿌린다고 합니다.

펜타곤에서도 승인되어 쓰인다고해요.(공문) NSA, DoD 등에서도 승인했나봐요.


FIDO에 대해서 잠시 알아보고 넘어갈까요?

FIDO1에서 FIDO Alliance에서는 두가지 프로토콜을 표준으로 제안했습니다.

  • UAF(Universal Authentication Framework) : 우리가 가장 흔하게 사용하는 지문인식, 얼굴인식, PIN번호 등이 여기에 포함됩니다. 생체정보를 이용해 한 쌍의 키(개인키+공개키)를 생성해서 비밀번호 없이도 인증을 할 수 있습니다.
  • U2F(Universal 2nd Factor) : 생체인증이 아닌 추가 방식의 보안방식을 추가합니다. Yubikey가 여기에 해당되고 구글의 Titan Key도 있지만 타이탄 키를 중국에서 제조한다고 하더군요.(#) 유비키는 스웨덴, 미국에서만 제조합니다. 다 떠나서 구글 Titan 키 쓰는 사람을 본 적이 없습니다. 단순 USB 형태 뿐 아니라 NFC 등도 지원합니다.

우리같은 일반 사용자들이 기술적인부분을 딥하게 파고들 필요는 없으니 매우 쉽게 설명드리자면 FIDO는 기존 ID 및 패스워드 로그인 방식이 아닌 지문, 홍채, 목소리, 얼굴 인식 등 생체 정보를 통해 인증하는 것을 이야기 합니다. FIDO 첫번째 버전은 스마트폰에서 가장 많이 쓰였습니다.

FIDO2는 FIDO 얼라이언스 + W3C(World Wide Web 컨소시엄) 공동 프로젝트로 강력한 웹 보안을 위한 W3C 웹 인증(WebAuthn) 표준을 목표로 만들어졌습니다. 위에서 말씀드린 UAF, U2F에 CTAP(Cilent to Authenticator Protocol *보안 키 같은 외부 장치로 웹 서비스 및 앱 같은 응용 프로그램에 인증할 수 있게 해주는 것), WebAuthn(*각종 온라인 서비스에서 FIDO 인증을 사용할 수 있게 해주는 API) 기술이 추가되어 모든 온라인 환경에서 FIDO 인증을 사용할 수 있게 확장한 것 입니다.

다양해진 Yubikey 종류와 그로인한 고민의 시간

원래는 Yubikey 5c nfc 아니면 Yubikey 5c nano 둘중 하나를 구매하려고 했는데, Yubikey Bio가 있는게 아니겠습니까! 여기서 고민이 시작됩니다. “Yubikey를 잃어버려도 지문 인식이 추가되어있으면 더 안전하지 않을까? 더 비싼게 좋은거다.. 저거 살까???” 종일 고민하다 다행히 비교표를 보고 마음을 정할 수 있었습니다.

일단 Bio는 Yubico Authenticator(OTP), OpenPGP 그리고 NFC 등 몇가지 기능이 안되더라구요. 저는 나중에 Yubikey OTP도 같이 사용하지 않을까? 싶어서 마음편하게 다시 ‘나노’로 가느냐.. 일반으로 가느냐 고민을 했는데 너무 작아서 잃어버릴까봐 Yubikey 5C NFC로 결정했습니다. (아직도 바이오가 눈에 아른거립니다..)

NFC 기능이 있으면 스마트폰 NFC 켜놓고 갖다 대기만하면 인증되어서 매우 편리합니다.

Yubikey FIPS는 뭐예요?

그리고 Yubikey FIPS 시리즈가 있는데, 우리같은 일반 유저들을 위한것이 아닙니다.

FIPS 140-2 검증으로 강력한 보안 및 규정 준수 보장 – YubiKey 5 FIPS 시리즈를 통해 정부 기관 및 규제 대상 산업은 새로운 NIST SP800-63B 지침에서 가장 높은 AAL3(인증자 보증 수준 3) 요구 사항을 충족할 수 있습니다.

FIPS는 연방 정보 처리 표준이라는 뜻으로, 미국과 캐나다 정부 조달의 필수 인증요소로 불리기도 하는데요. 까다로운 절차를 거쳐야 합니다.

FIPS 140-2의 검증 테스트는 NIST에서 확립한 CMVP(Cryptographic Module Validation Program), 캐나다 정부의 CSE(Communications Security Establishment)를 거치는데 해당 테스트는 NVLAP(National Voluntary Laboratory Accreditation Program)인증을 받은 외부 연구소에서 처리하는데 암호화 모듈 사양, 물리적 보안 수준, 전자파 적합성, 설계 보증 등 많은 조건을 거쳐야하고 기간은 짧게는 3개월 길게는 1년 이상도 걸린다고 합니다.

한마디로 기밀 등 중요한 정보를 취급하거나, 높은 보안 등급을 필요로 하는 FIPS 인증받은 Key를 사용하는 것 입니다. Yubikey에 FIPS 옵션이 붙으면 10달러 정도 더 비싸집니다.


유비키 사용법 및 활용방법

주문한 키가 왔습니다.

Yubikey는 무조건 2개 구매를 추천드립니다. 끝판왕급 보안을 제공하지만 만약 하나 사서 유일한 키를 잃어버리면.. 생각도 하기 싫어지는 상황이 펼쳐집니다. 구매하고 보니… 노트북용으로는 나노를 살걸 그랬나 싶기도하고.. ㅜㅜ

Yubikey를 해외 직구할때 같은 것을 2개하면 전파인증이 안되어있어서 폐기하고 1개만 통관시켜준다는 썰도 있지만 실제로 폐기당한 사례를 찾을 수 없네요.

Yubikey Manager를 다운로드 받아 봅시다.


Yubikey 첫 세팅

처음 UBS를 꽂으면 이쁘게 불이 들어와요.

제 맥북에서는 처음 유비키를 USB에 꽂으니 이 화면이 나왔습니다. 시키는대로 따라하시면 됩니다.

실행하면 위 처럼 나옵니다. 그 전에는 USB를 꽂아도 아무런 정보가 나오지 않아요. 윈도우/맥/리눅스 3가지 버전이 있습니다.

고수님들은 CLI 환경에서도 세팅할 수 있습니다. 이 링크를 참고해주세요. https://docs.yubico.com/software/yubikey/tools/ykman/index.html

Applications를 누르면 3개가 보이죠. 아래 방법대로 세팅합니다.

FIDO2

FIDO2 PIN 번호를 정해주세요. 8번 틀리면 리셋하셔야 합니다. 이거만 해준뒤 사용하시면 됩니다.

PIV

Pin Management

  • PIV(개인신원확인)는 Yubikey를 스마트카드로 사용하기위한 설정이라고 하네요. 사용할 일이 거의 없을 듯 한데 일단 기본 설정은 바꿔놨습니다.
  • PIN/PUK 기본번호가 각각 123456(PIN) / 12345678(PUK)로 설정이 되어있습니다. 바꿔주세요. PUK는 PIN번호가 세번 틀렸을때 잠기면 그걸 풀어주는 키 입니다. 영문자 입력이 안먹혀서 보니 MacOS는 숫자만 가능하다고 하네요.
  • Management Key – 010203040506070801020304050607080102030405060708 기본키 입니다. 이걸 입력후 다른 48자리 숫자를 입력하고 암호화는 AES256을 선택했습니다.

Certificates는 제가 지금 사용할게 아니라 넘어갔습니다.

OTP

Yubiko OTP, OATH-HOTP 두개만 보시면 되겠습니다.

뒤에건 우리가 일반적으로 사용하는 OTP고, Yubikey 내장 OTP를 사용하시려면 첫번째 것을 선택하시면 됩니다. 저는 일반 OTP는 Authy를 사용하고 있습니다. 그리고 언제든 문제가 생기면 갈아탈 수 있게 2차로 Bitwarden에 백업을 해놨구요.

제가 Yubikey를 구매한 가장 큰 이유는 정말 중요한 서비스(구글 계정, 패스워드 앱 등)에만 FIDO2 Key로 쓰기 위함이라 OTP는 시간이 조금 더 지난뒤에 호기심으로 사용할 예정입니다. 제가 바로 유비키 OTP 옮기지 않는 이유는 키당 32개의 OTP 계정만 등록이 가능한 이유 입니다. 제 OTP 계정이 40개가 넘거든요. ㅜㅜ 어차피 Bitwarden, 1Password 같은 패스워드 앱에 OTP 다 등록해놓고 유비키로 계정 관리하면 안전하니까 괜찮습니다.

Interfaces

사용할 기능들을 선택하는 곳 같습니다. 저는 그대로 놔뒀어요.


다른 종류의 키를 구매하신 분들은 https://www.yubico.com/setup/ 이곳으로 들어가셔서 본인이 구매한 Yubikey를 선택하시면 셋업 방법을 자세히 알 수 있습니다.

등록하고나면 아래 처럼 간편하게 로그인이 가능합니다.

유비키 스페어(예비)키는 어떻게 사용하나요?

FIDO2의 경우 키를 등록 시킬때 두개같이 하시면되고, OTP는 아직 안해봤지만 QR코드나 영문자로된 OTP코드를 복사해놨다가 넣으면 될 듯 하네요. FIDO2 등록 방법 예제는 https://bitwarden.com/help/setup-two-step-login-yubikey/ 이걸 참고해보세요. 비트워든의 경우 저런식으로 5개까지 등록이 가능하다고 합니다.

결론

이제 Yubikey가 등록된 계정을 해킹하려면 ‘내 비밀번호’ + 우리집에와서 키를 훔쳐가기’ 두가지가 되어야 합니다. 둘중에 하나는 가능할지라도 둘다하는건 사실상 불가능에 가깝습니다. 모두 본인의 정보와 데이터를 안전하게 지키는데 도움이 되었으면 좋겠습니다.

8 Comments

  1. 해킹 문제 때문에 검색하다 유비키를 알게돼서 검색으로 들어오게 됐습니다. 덕분에 많이배우고가요. 고민없이 지금바로 주문하려구요!!!

  2. 최근에 애플이 애플아이디 2차 인증 물리 보안키 지원을 발표하고 베타버전에 기능이 들어간걸 보니 하나 들일려고 하는데요. 파란색을 살지 검정색을 살지 고민이 됩니다. 파란색은 검정색에 비하면 FIDO빼면 거의 다 빠진 수준이던데 FIDO만으로도 충분할까요?

    1. 사람마다 다른데 거의 FIDO 사용 목적이 최소 50~60% 정도이지 않을까 싶어요.(제 뇌피셜) 파란색이 일반적으로 많이 사용하시는 용도로 가성비는 괜찮다고 봅니다.

  3. 저는 yubikey 보다도
    오픈소스인 nitrokey가 더 나은것 같습니다.

    1. 오 반갑습니다. NitroKey, Solokeys 둘다 관심리스트에 있습니다. 혹시 NitroKey 구매하셨나요? 후기 찾기가 쉽지 않더라구요. 아직도 한국 유저 사용기는 없는 듯 합니다. Opsec님 혹시 사셨으면 간단 소감이라도 듣고싶어요 궁금했거든요

      1. 사실 저도 구매를 생각 중에만 있습니다.
        환율도 그렇고, 여유 자금이 생긴다면요. ㅎㅎ

        1. 혹시 구매하시면 꼭 후기 부탁드려요!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다