Google Authenticator 앱은 타사 서비스가 장치간 동기화를 지원하는 와중에도 이를 지원하지 않고 있었는데요, 최근 클라우드 동기화 기능이 추가되었습니다...만

 

https://news.ycombinator.com/item?id=35708869

https://news.hada.io/topic?id=9048

https://defcon.social/@mysk/110262313275622023

 

해당 동기화 기능은 인증 코드를 암호화하지 않습니다. 예를 들어 유사 서비스인 Authy는 마스터 비밀번호로 암호화하여 동기화가 진행됩니다. 이 자체로는 문제가 되지 않습니다만(서버간 통신은 HTTPS를 사용하니) 나중에 계정 자체가 털린 경우 누구나 계정에 저장된 2차 인증 코드를 확인할수 있으며 추후 법적인 문제 등으로 요청시 구글에서 저장된 코드를 확인해볼수 있게 됩니다.

 

이중 후자는 사실 구글을 믿냐 아니냐의 문제... 즉 신뢰의 문제라고 볼수 있지만 전자의 경우 상당히 심각하다고 볼 수 있습니다. 이 문제가 해결되기 전까지는 그냥 동기화 기능이 없던 것처럼 사용하시는것을 추천드립니다.

  • Lv8
    저는 OTP를 여러군데에 복제해서 사용하고 있기 때문에, 이번 변화가 좋다고 생각합니다.
    Google Authenticator 앱에만 저장되어 있는 코드를 이번에 추출해서 다른곳에도 입력해둬야겠네요.
  • Lv36

    OTP를 통한 2FA라는 것은 이용자가 특정한 기기를 물리적으로 소유하고 있다는 사실을 증명하는 것이 핵심인데, 클라우드를 통해 어느 기기에서나 증명할 수 있게 된다면 과연 그 목적에 맞는지 의심이 됩니다. 물리적 소유가 아니라, 특정한 구글 계정에 접근할 권한이 있는지를 증명하는 것으로 변질되니까요. 예전에 은행 보안카드 사진을 찍어서 폰이나 클라우드에 저장해 놓고 쓰던 사람들과 다를 바가 없습니다.

     

    기존의 Google OTP도 QR코드를 사용해서 인접한 기기들끼리 동기화하는 기능이 있었습니다. 이 방법으로 제 폰의 OTP 코드들을 태블릿에 백업해 두고 있습니다. 클라우드를 통한 실시간 동기화보다는 불편하지만, 과연 그 불편함을 해소하기 위해 OTP의 존재 이유를 부정하는 수준으로 변질시켜야만 할까요? 구글처럼 보안에 신경 많이 쓰는 기업이 이런 중요한 기능을 이렇게 허접한 방식으로밖에 구현할 수 없었을까요?