암호의 올바른 버전이 사용하는 정확한 대문자와 문자/기호 시퀀스뿐이라고 생각하면 충격을 받을 수 있습니다. Facebook은 귀하의 편의를 위해 약간의 비밀번호 변형을 허용합니다. 그리고 그것은 완벽하게 안전합니다.
목차
비밀번호를 잘못 입력하기 쉽습니다.
Facebook 및 이와 유사한 다른 사이트에는 문제가 있습니다. 길고 복잡한 비밀번호를 사용하기를 원하지만 입력하기 어렵습니다. 이를 처리하려면 암호 관리자를 사용해야 하지만 대부분의 사람들은 그렇지 않습니다. 그리고 이 두 가지 요인으로 인해 비밀번호를 잘못 입력하는 경우가 많습니다.
이때 페이스북은 어떻게 해야 할까요?
비밀번호가 약간 벗어났다는 이유로 귀하의 입장을 거부하고 두 번째 시도로 당신을 좌절시켜야 합니까? 아니면 제공된 비밀번호가 정확하지만 오타가 있음을 인식하고 실수를 무시하여 고양이 gif 및 아기 사진으로 가는 여정을 순조롭게 처리해야 합니까?
페이스북, 비밀번호 실수를 평가하다
같이 알렉 머펫, 런던에 있는 Facebook Engineering의 보안 인프라 팀의 전 소프트웨어 엔지니어는 Facebook이 후자를 선택했다고 설명합니다. 비밀번호가 거의 정확하면 정확한 것으로 간주할 수 있습니다. 이에 대한 규칙은 간단합니다. Facebook은 다음 조건 중 하나라도 충족하는 경우 잘못된 비밀번호를 허용합니다.
Caps Lock이 켜져 있고 대문자가 반대입니다.
암호의 시작 또는 끝에 추가 문자를 입력합니다.
암호의 첫 번째 문자는 소문자여야 하지만 대문자로 입력했습니다.
보시다시피, 이러한 변형은 모두 입력할 때 비밀번호가 약간 누락된다는 기본 개념을 중심으로 합니다. 어떤 경우에는 대문자로 된 단어의 첫 글자와 같이 자동 고침 문제일 수 있습니다. 잘못 입력한 비밀번호가 이러한 특정 규칙을 충족하는 경우 문제가 있다는 사실을 모를 수 있습니다. 로그인만 하면 됩니다.
예를 들어 비밀번호가 “letMeIn”이라고 가정해 보겠습니다. Facebook은 “LETmEiN”(정확한 대문자 잠금 반전이기 때문에) 및 “LetMeIn”(첫 글자의 대문자가 올바르지 않기 때문에)도 허용합니다. “1letMeIn” 및 “letMeIn2″와 같은 변형도 허용됩니다. 시작 또는 끝에 추가 문자를 제외하고 정확하기 때문입니다. 그러나 “LETMEIN”, “letmein” 또는 “12LetMeIn”은 전혀 허용하지 않습니다.
이 프로세스는 여전히 안전합니다
처음에는 얼굴을 붉히며 Facebook의 암호 관대함은 안전하지 않은 것처럼 들립니다. 그러나 이 경우 진실은 더 복잡합니다. 단 몇 분 만에 암호를 추측하는 빠른 무차별 대입을 보여주는 오래된 해커 범죄 드라마를 생각하기 쉽지만 해킹은 전혀 그런 식으로 작동하지 않습니다. 알 수 없는 암호를 강제하는 무차별 대입이 존재하지만 TV에서 암시하는 것과는 매우 다릅니다. 같이 xkcd는 유명하게 시연합니다, 암호의 길이가 길어질수록 암호를 푸는 시간도 기하급수적으로 늘어납니다. 복잡성을 추가하면 도움이 되지만 생각만큼 많지는 않습니다.
따라서 Facebook이 허용하는 시나리오 중 하나인 암호의 시작 또는 끝에 추가 문자는 무차별 대입이 훨씬 더 어렵습니다. 해커는 암호와 추가 문자를 만들기 전에 이미 올바른 암호를 가지고 있어야 합니다.
특히 흥미로운 것은 Caps Lock 시나리오입니다. 먼저 메모장에 수동으로 비밀번호를 입력하고 대소문자를 반대로 한 다음 해당 결과를 Facebook에 붙여넣는 방식으로 테스트했습니다. 그것은 그 암호를 거부했습니다. 그런 다음 Caps Lock을 켜고 Cap Lock이 꺼진 것처럼 암호를 입력하여 대소문자를 반대로 했습니다. 그 시도는 성공했고 나는 로그인했습니다. Facebook은 비밀번호가 무엇인지뿐만 아니라 어떻게 입력하는지 확인합니다. Brute Force는 실제 암호를 목표로 하는 것보다 더 어려운 caps lock을 시뮬레이션하지 않는 한 해당 시나리오에서 도움이 되지 않습니다.
업데이트: 정보 보안 컨설턴트 Paul Moore가 지적한 대로 트위터, Facebook은 대부분 원래 비밀번호(적절하게 해시 및 솔트 처리)만 저장하고 비밀번호의 변형은 저장하지 않습니다. 로그인을 위해 비밀번호를 제출하면 원래 비밀번호와 대조됩니다. 일치하지 않으면 Facebook은 이러한 변형을 통해 제출된 비밀번호를 실행합니다. 예를 들어 Caps Lock이 켜져 있는 경우 Facebook은 제출된 비밀번호를 가져와 대문자를 반대로 한 다음 다시 시도합니다. 그래도 작동하지 않으면 Facebook은 다음 시나리오에서 다시 시도합니다. 기본적으로 Facebook은 “잘못된 비밀번호” 메시지를 받았을 때 수행했을 작업을 수행합니다. 즉, 입력한 비밀번호에 실수로 오류가 있는지 확인하고 수정하는 것입니다. 그러면 전체 프로세스가 덜 답답해집니다. 올바른 암호에 대한 몇 가지 아이디어가 여전히 필요하고 허용되는 변형이 좁기 때문에 보안이 저하되지 않습니다.
더 중요한 것은, 무차별 대입 방법이 소셜 네트워크 및 기타 계정에 대한 액세스 권한을 얻는 기본 방법이 아니라는 것입니다. 사회 공학 및 암호 덤프는 사용하기가 훨씬 간단합니다. 비밀번호 재설정 질문이 있는 경우 답변 중 적어도 일부는 공개적으로 액세스 가능한 정보일 가능성이 큽니다. 재설정 질문이 출생지, 어머니의 결혼 전 이름 또는 고등학교 마스코트에 관한 것이라면 답을 추적할 수 있습니다. 이 시점에서 악의적인 사용자가 암호를 재설정하여 암호 자체를 추측하거나 결정할 필요가 없도록 만들 수 있습니다.
안타깝게도 많은 사람들이 로그인 자격 증명이 필요한 모든 사이트에서 여전히 동일한 이메일 및 비밀번호 조합을 사용하고 있습니다. 데이터 침해 사례를 찾기 위해 멀리 찾을 필요가 없습니다. 여러 곳에서 동일한 이메일과 비밀번호 조합을 사용하고 있고 몇 년 동안 사용했다면 비밀번호는 Facebook의 정책이 아니라 취약점입니다.
침해의 피해자인지 확실하지 않은 경우 다음으로 이동하십시오. haveibeenpwned.com 비밀번호가 도용되었는지 확인하십시오. 어딘가에서 적어도 일부 계정이 손상되었을 가능성이 있습니다.
항상 계정을 보호해야 합니다
이 정책이 귀하를 취약하게 만드는 것이 걱정된다면 취할 수 있는 조치가 있습니다. 첫 번째 단계는 모든 사이트에 대해 동일한 비밀번호 사용을 중지하는 것입니다. 대신 암호 관리자를 사용하여 사용하는 모든 사이트에 대해 고유한 긴 암호를 생성하도록 하십시오. 그런 다음, 다음에 사용한 웹 사이트가 손상된 것을 확인하면 해당 암호 하나만 변경하고 이 알려진 암호가 해커에게 아무런 도움이 되지 않는다는 사실을 알고 안심할 수 있습니다.
암호를 강화한 후 암호를 제공하는 모든 사이트에서 이중 인증을 켜십시오. Facebook은 이중 인증을 제공하므로 거기에서도 설정해야 합니다. 최고의 2단계 인증은 새 코드를 자주 생성하는 스마트폰의 앱이나 가지고 다니는 물리적 키에 의존합니다. SMS 기반 이중 요소 인증은 없는 것보다 낫지만 여전히 사회 공학 기술에 취약합니다. 따라서 인증자 앱이나 물리적 키에 의존할 수 있다면 그렇게 해야 합니다. 그리고 휴대전화나 열쇠에 문제가 발생할 경우를 대비하여 백업을 준비해 두십시오.
이 조합을 사용하면 Facebook의 비밀번호 정책에 관계없이 계정이 훨씬 더 안전합니다. 최소한 비밀번호 관리자와 고유 비밀번호를 사용해야 하지만 이중 인증과 함께 사용하는 것이 더 좋습니다.
당황하지 마십시오. 편리함을 즐기세요
페이스북의 비밀번호 정책은 안전하지 않다고 걱정하기 쉽지만, 위험보다 이득이 더 큰 것이 현실이다. 보안은 균형을 유지하는 행위입니다. 시스템을 잠글수록 액세스하기가 더 쉬워집니다. 그러나 더 편리한 액세스를 추가하면 보안을 잃게 됩니다. 트릭은 사용자를 좌절시키지 않으면서 사용자를 보호하기 위해 적절한 양의 두 가지를 모두 얻는 것입니다. 페이스북은 여기서 사용자 편의성 측면에서 실수했으며 이는 아마도 수용 가능한 결정일 것입니다.