제퍼넷 로고

Google에서 2FA 비밀 유출 – 연구원들은 현재 새로운 "계정 동기화" 기능에 대해 조언합니다.

시간

XNUMXD덴탈의 구글 인증 자 2FA 앱은 최근 사이버 보안 뉴스 기사에서 강력하게 등장했으며, Google에서는 2FA 데이터를 클라우드에 백업한 다음 다른 장치에 복원할 수 있는 기능을 추가했습니다.

설명하자면, 2FA(이중 인증) 앱은 휴대 전화나 태블릿에서 실행하여 단순한 암호 이상으로 온라인 계정을 보호하는 데 도움이 되는 일회성 로그인 코드를 생성하는 프로그램 중 하나입니다.

기존 암호의 문제점은 사기꾼이 암호를 구걸하거나 훔치거나 빌릴 수 있는 방법이 많다는 것입니다.

어깨 서핑, 입력하는 동안 중간에 있는 도적이 어깨 너머로 엿보는 곳; 있다 영감을 얻은 추측, 사기꾼이 개인 관심사를 기반으로 예측할 수 있는 문구를 사용했습니다. 있다 피싱, 사기꾼에게 암호를 넘겨주도록 유인됩니다. 그리고 거기에 키 로깅, 컴퓨터에 이미 이식된 맬웨어가 사용자가 입력한 내용을 추적하고 관심 있어 보이는 웹 사이트를 방문할 때마다 비밀리에 녹음을 시작합니다.

그리고 기존 암호는 일반적으로 로그인할 때마다 동일하게 유지되기 때문에 오늘 암호를 알아낸 사기꾼은 여가 시간에 몇 주, 몇 달, 때로는 몇 년 동안 암호를 반복해서 사용할 수 있습니다.

따라서 일회성 로그인 코드가 있는 2FA 앱은 매번 변경되는 추가 비밀(보통 XNUMX자리 숫자)로 일반 암호를 보강합니다.

휴대전화를 두 번째 요소로 사용

2FA 앱에서 일반적으로 생성되는 XNUMX자리 코드는 노트북이 아닌 휴대폰에서 바로 계산됩니다. 휴대전화에 저장된 '시드' 또는 '시작 키'를 기반으로 합니다. 노트북에 일상적으로 입력하는 비밀번호가 아니라 휴대전화의 잠금 코드로 보호됩니다.

이렇게 하면 일반 암호를 구걸하거나 빌리거나 훔치는 사기꾼이 귀하의 계정에 바로 들어갈 수 없습니다.

이러한 공격자는 또한 전화기에 액세스해야 하며 앱을 실행하고 일회성 코드를 얻으려면 전화기를 잠금 해제할 수 있어야 합니다. (코드는 일반적으로 날짜와 시간을 30초 단위로 표시하므로 XNUMX초마다 변경됩니다.)

더 좋은 점은 최신 휴대전화에 변조 방지 보안 저장 칩이 포함되어 있다는 것입니다(Apple은 보안 엔 클레이브; Google은 다음과 같이 알려져 있습니다. Titan) 칩을 분리하고 미니어처 전기 프로브를 통해 또는 전자 현미경과 결합된 화학적 에칭을 통해 오프라인에서 데이터를 발굴하려고 해도 비밀을 유지합니다.

물론, 이 "솔루션"은 그 자체로 문제를 야기합니다. 즉, 휴대폰을 분실한 경우 또는 새 휴대폰을 구입하여 전환하려는 경우 가장 중요한 2FA 시드를 어떻게 백업합니까?

씨앗을 백업하는 위험한 방법

대부분의 온라인 서비스에서는 2바이트의 무작위 데이터 문자열을 입력하여 새 계정에 대한 20FA 코드 시퀀스를 설정해야 합니다. 문자를 사용하는 base-40 인코딩에 16자를 신중하게 입력하여 AZ 그리고 XNUMX자리 숫자 234567 (O-for-Oscar 및 I-for-India처럼 보이기 때문에 XNUMX과 XNUMX은 사용되지 않습니다.)

일반적으로 QR 코드를 통해 특별한 종류의 URL을 스캔하여 시작 비밀을 수동으로 탭하는 번거로움을 피할 수 있는 기회를 얻는다는 점을 제외하고.

이 특별한 2FA URL에는 다음과 같이 계정 이름과 시작 시드가 인코딩되어 있습니다(URL을 짧게 유지하기 위해 여기에서 시드를 10바이트 또는 16 base-32 문자로 제한했습니다).

이것이 어디로 가는지 짐작할 수 있을 것입니다.

이런 종류의 2FA 코드를 스캔하기 위해 휴대폰 카메라를 작동시킬 때 먼저 코드의 사진을 찍어 백업으로 사용하고 싶은 유혹이 생깁니다…

...하지만 그렇게 하지 않는 것이 좋습니다. 나중에 해당 사진을 손에 넣은 사람(예: 클라우드 계정에서 또는 실수로 전달)이 비밀 시드를 알게 되고 권한을 쉽게 생성할 수 있기 때문입니다. 일련의 XNUMX자리 코드.

따라서 2FA 데이터를 안정적으로 백업하는 방법 일반 텍스트 복사본을 유지하지 않고 그 성가신 멀티 바이트 비밀 중?

케이스의 Google OTP

음, Google Authenticator는 최근에 2FA "계정 동기화" 서비스를 제공하기 시작하여 2FA 코드 시퀀스를 클라우드에 백업하고 나중에 예를 들어 분실하거나 교체하는 경우 새 장치로 복원할 수 있도록 하기로 결정했습니다. 너의 폰.

하나의 매체로 기술 된 그것, "Google Authenticator는 13년 만에 오랫동안 기다려온 중요한 기능을 추가합니다."

하지만 이 계정 동기화 데이터 전송은 얼마나 안전하게 이루어집니까?

비밀 시드 데이터가 Google 클라우드로 전송되는 동안 암호화되나요?

상상할 수 있듯이 2FA 비밀을 전송하는 클라우드 업로드 부분은 실제로 암호화되어 있습니다. 보안에 민감한 모든 회사와 마찬가지로 Google은 몇 년 동안 모든 웹 기반 트래픽에 HTTPS 전용 HTTPS를 사용했기 때문입니다. .

그러나 2FA 계정을 고유한 암호로 암호화할 수 있습니까? 기기를 떠나기 전에?

이렇게 하면 클라우드 저장소에 있는 동안 가로채거나(합법적이든 아니든) 소환, 유출 또는 도난당할 수 없습니다.

결국 "클라우드에서"를 말하는 또 다른 방법은 단순히 "다른 사람의 컴퓨터에 저장됨"입니다.

무엇을 추측?

우리의 인디 코더 및 사이버 보안 논쟁 친구 @mysk_coNaked Security에서 이전에 여러 번 쓴 적이 있는 , 알아보기로 결정했습니다.

그들은보고했다. 그다지 고무적으로 들리지 않습니다.

위에서 볼 수 있듯이 @mysk_co는 다음과 같이 주장했습니다.

  • 시드를 포함한 2FA 계정 세부 정보는 HTTPS 네트워크 패킷 내에서 암호화되지 않았습니다. 즉, 업로드가 도착한 후 전송 수준 암호화가 제거되면 Google에서 귀하의 시드를 사용할 수 있으므로 암시적으로 귀하의 데이터에 대한 수색 영장이 있는 모든 사람이 사용할 수 있습니다.
  • 장치를 떠나기 전에 업로드를 암호화하는 암호 옵션이 없습니다. @mysc_co 팀이 지적했듯이 이 기능은 Google Chrome에서 정보를 동기화할 때 사용할 수 있으므로 2FA 동기화 프로세스가 유사한 사용자 경험을 제공하지 않는 것이 이상하게 보입니다.

다음은 Google Authenticator 앱에서 새로운 2FA 계정을 설정하기 위해 생성한 조합된 URL입니다.

 otpauth://totp/Twitter@Apple?secret=6QYW4P6KWAFGCUWM&issuer=Amazon

다음은 전송 수준 보안(TLS) 암호화가 제거된 상태에서 Google Authenticator가 클라우드와 동기화한 네트워크 트래픽의 패킷 캡처입니다.

강조 표시된 10진수 문자는 위 URL에서 base-32 "비밀"에 해당하는 원시 XNUMX바이트 데이터와 일치합니다.

 $ luax Lua 5.4.5 Copyright (C) 1994-2023 Lua.org, PUC-Rio __ ___( o)> <_. ) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~ package.preload{} > b32seed = '6QYW4P6KWAFGCUWM' > rawseed = base.unb32(b32seed) > rawseed:len() 10 > base.b16(rawseed) F4316E3FCAB00A6152CC에 Duck이 좋아하는 모듈 추가

무엇을해야 하는가?

우리는 @mysk_co의 제안에 동의합니다. “지금은 새로운 동기화 기능 없이 앱을 사용하는 것이 좋습니다.”

우리는 Google이 곧 2FA 동기화 기능에 암호 기능을 추가할 것이라고 확신합니다. 이미 존재 함 Chrome 자체 도움말 페이지에 설명된 대로 Chrome 브라우저에서:

정보를 비공개로 유지

암호를 사용하면 Google이 읽지 않고도 Google 클라우드를 사용하여 Chrome 데이터를 저장하고 동기화할 수 있습니다. [...] 암호는 선택 사항입니다. 동기화된 데이터는 전송 중일 때 항상 암호화로 보호됩니다.

이미 씨앗을 동기화했다면, 당황하지 마세요(다른 사람이 쉽게 스누핑할 수 있는 방식으로 Google과 공유되지 않음). 하지만 이제 자신만 보관해야 한다고 결정한 모든 계정에 대해 2FA 시퀀스를 재설정해야 합니다. .

결국, 은행 계좌와 같은 온라인 서비스에 대해 2FA를 설정했을 수 있습니다. 이용 약관에 따라 암호 및 시드를 포함한 모든 로그인 자격 증명을 자신에게만 보관하고 Google을 비롯한 누구와도 공유해서는 안 됩니다.

어쨌든 2FA 씨앗에 대한 QR 코드의 사진을 찍는 습관이 있다면, 그것에 대해 너무 많이 생각하지 않고, 우리는 당신이하지 않는 것이 좋습니다.

우리는 Naked Security에서 말하고 싶습니다. 의심스러운 경우 / 제공하지 마십시오.

귀하가 보관하고 있는 데이터는 의도적으로든 실수로든 누출되거나 도난당하거나 소환되거나 어떤 종류의 제XNUMX자와 공유될 수 없습니다.


업데이트. Google은이 트위터에 응답 소위 종단간 암호화(E2EE)가 없는 2FA 계정 동기화 기능을 의도적으로 출시했음을 인정함으로써 @mysk_co의 보고서에 "앞으로 Google Authenticator용 E2EE를 제공할 계획입니다." 회사 측도 “앱을 오프라인으로 사용하는 옵션은 백업 전략을 스스로 관리하려는 사람들을 위한 대안으로 남을 것입니다.” [2023-04-26T18:37Z]


spot_img

최신 인텔리전스

spot_img