암호의 정확한 대소문자 및 문자/기호 조합만이 유효하다고 생각한다면 놀라울 수 있습니다. 페이스북은 사용자의 편의를 위해 비밀번호의 약간의 변형을 허용하며, 이는 완전히 안전합니다.
비밀번호 오타의 빈번함
페이스북을 포함한 여러 웹사이트에서는 복잡하고 긴 비밀번호를 권장하지만, 이는 입력하기 어려울 수 있습니다. 대부분의 사용자는 암호 관리자를 사용하지 않기 때문에, 비밀번호를 잘못 입력하는 경우가 빈번합니다. 페이스북은 이러한 상황에서 어떻게 대처해야 할까요?
사소한 오타로 인해 로그인을 거부하고 두 번째 시도마저 좌절시켜야 할까요? 아니면 입력된 비밀번호에 약간의 오타가 있지만, 실제 비밀번호와 매우 유사함을 인지하고 오류를 무시하여 사용자가 쉽게 로그인할 수 있도록 해야 할까요?
페이스북의 비밀번호 허용 정책
알렉 머펫 전 페이스북 엔지니어에 따르면 페이스북은 후자를 택했습니다. 즉, 실제 비밀번호와 매우 유사한 비밀번호는 유효한 것으로 간주합니다. 페이스북은 다음과 같은 경우에 오타가 있는 비밀번호를 허용합니다.
- Caps Lock 키가 활성화되어 있어 대소문자가 반대로 입력된 경우
- 비밀번호 앞이나 뒤에 추가 문자가 입력된 경우
- 비밀번호의 첫 글자가 소문자여야 하지만 대문자로 입력된 경우
이러한 변형은 모두 사용자가 비밀번호를 입력할 때 사소한 실수를 저지르는 상황을 고려한 것입니다. 일부 경우에는 자동 수정 기능과 관련된 문제일 수도 있습니다. 이러한 규칙에 해당하는 오타의 경우 사용자는 문제를 인지하지 못한 채로 로그인이 가능합니다.
예를 들어, 비밀번호가 “letMeIn”이라면, 페이스북은 “LETmEiN” (대소문자 반전) 및 “LetMeIn” (첫 글자 대문자 오류)도 허용합니다. 또한 “1letMeIn” 또는 “letMeIn2″와 같이 비밀번호 앞이나 뒤에 추가 문자가 있는 경우도 허용합니다. 그러나 “LETMEIN”, “letmein” 또는 “12LetMeIn”과 같은 변형은 허용하지 않습니다.
안전성은 여전히 보장됩니다
페이스북의 암호 정책이 처음에는 보안에 취약해 보일 수 있지만, 실제로는 그렇지 않습니다. 비밀번호를 무작위로 추측하는 해킹 공격은 TV에서 묘사되는 것처럼 간단하지 않습니다. xkcd에서 보여주듯이, 암호 길이가 길어질수록 암호를 해독하는 데 걸리는 시간은 기하급수적으로 증가합니다.
따라서 페이스북이 허용하는 비밀번호 앞이나 뒤에 추가 문자가 있는 경우는 무차별 대입 공격을 훨씬 더 어렵게 만듭니다. 해커는 올바른 암호를 알고 있어야 추가 문자를 추가할 수 있기 때문입니다.
특히 Caps Lock 오류의 경우, 사용자가 수동으로 메모장에 비밀번호를 입력하고 대소문자를 반전시켜 페이스북에 붙여넣는 방식으로는 로그인이 불가능합니다. 이는 페이스북이 비밀번호 자체뿐만 아니라 입력 방식까지 확인하기 때문입니다. 즉, 무차별 대입 공격은 실제 암호뿐 아니라 Caps Lock 상태까지 시뮬레이션해야 하므로 더욱 어려워집니다.
정보 보안 컨설턴트 Paul Moore의 트윗에 따르면, 페이스북은 대부분 원본 비밀번호(적절하게 해시 처리)만 저장하고 비밀번호 변형은 저장하지 않습니다. 로그인을 위해 비밀번호가 제출되면 페이스북은 먼저 원본 비밀번호와 비교하고, 일치하지 않을 경우에만 변형된 비밀번호를 시도합니다. 예를 들어 Caps Lock이 켜져 있는 경우, 입력된 비밀번호의 대소문자를 반전시켜 다시 시도합니다. 기본적으로 페이스북은 사용자가 “잘못된 비밀번호” 메시지를 받았을 때, 오류를 수정하고 다시 시도하는 것과 동일한 과정을 자동으로 수행하는 것입니다. 이러한 과정을 통해 사용자의 불편함을 최소화하면서도 보안을 유지할 수 있습니다. 허용되는 변형이 제한적이고, 여전히 올바른 암호에 대한 단서가 필요하기 때문입니다.
더욱 중요한 것은, 무차별 대입 공격은 소셜 네트워크 계정 등을 해킹하는 주요 방법이 아니라는 점입니다. 사회 공학적 기법 및 유출된 암호 목록을 이용하는 것이 훨씬 쉽습니다. 암호 재설정 질문의 경우, 질문에 대한 답변이 공개적으로 알려져 있는 경우가 많습니다. 출생지, 어머니의 결혼 전 이름, 고등학교 마스코트 등은 쉽게 알아낼 수 있는 정보입니다. 이러한 정보가 유출되면 해커는 암호를 추측할 필요 없이 암호를 재설정할 수 있습니다.
많은 사용자가 여전히 여러 웹사이트에서 동일한 이메일과 비밀번호 조합을 사용하고 있습니다. 데이터 침해 사례는 쉽게 찾을 수 있습니다. 몇 년 동안 여러 곳에서 동일한 이메일과 비밀번호 조합을 사용해 왔다면, 보안 취약점은 페이스북 정책이 아니라 사용자 자신에게 있는 것입니다.
자신이 데이터 침해 피해자인지 의심된다면, haveibeenpwned.com에서 자신의 계정이 유출되었는지 확인해 보십시오. 최소한 일부 계정에서 위험에 노출되었을 가능성이 있습니다.
계정 보안을 위한 노력
페이스북의 비밀번호 정책이 걱정된다면, 사용자가 직접 취할 수 있는 조치가 있습니다. 먼저 모든 웹사이트에서 동일한 비밀번호를 사용하는 것을 중단해야 합니다. 암호 관리자를 사용하여 모든 웹사이트에 대해 고유하고 복잡한 비밀번호를 생성하는 것이 좋습니다. 이렇게 하면 특정 웹사이트가 해킹당하더라도 해당 비밀번호만 변경하면 되므로 다른 계정은 안전하게 보호할 수 있습니다.
암호를 강화한 후에는 이중 인증을 활성화해야 합니다. 페이스북에서도 이중 인증을 제공하므로 반드시 설정해야 합니다. 가장 안전한 이중 인증 방법은 스마트폰 앱 또는 물리적 키를 사용하는 것입니다. SMS 기반 이중 인증은 없는 것보다 낫지만, 사회 공학적 기법에 취약할 수 있습니다. 따라서 인증 앱이나 물리적 키를 사용하는 것이 더 안전합니다. 휴대전화나 키를 분실할 경우를 대비하여 백업 방법도 미리 마련해 두는 것이 좋습니다.
이러한 방법을 함께 사용하면 페이스북의 비밀번호 정책과 관계없이 사용자의 계정을 더욱 안전하게 보호할 수 있습니다. 최소한 암호 관리자와 고유한 비밀번호를 사용하는 것이 좋지만, 이중 인증과 함께 사용하는 것이 가장 효과적입니다.
불안해하지 마세요. 편리함을 누리세요.
페이스북의 비밀번호 정책은 안전하지 않다고 걱정하기 쉽지만, 실제로는 이점이 더 많습니다. 보안과 편리함은 균형을 이루어야 합니다. 시스템을 너무 잠그면 사용하기 어려워지고, 너무 편리하게 만들면 보안이 취약해집니다. 적절한 균형점을 찾는 것이 중요합니다. 페이스북은 사용자의 편의성을 고려하여 이러한 결정을 내렸으며, 이는 합리적인 선택이라고 볼 수 있습니다.