Offcanvas

보안

'강력한 것보단 고유한 게 낫다' 비밀번호의 허와 실

2015.07.24 Glenn Fleishman  |  Macworld
이름만 들어도 그 용도를 짐작할 수 있는 어덜트프렌드파인더(AdultFriendFinder)가 해킹되고 불과 몇 개월 후, 이번에는 애슐리 매디슨(Ashley Madison)이 해킹당했다는 소식이 전해졌다. 남녀 간의 만남을 주선하는 이 사이트의 계정이 해킹당했다는 사실은 보안 리포터 브라이언 크렙스가 처음 밝혔으며 이후 업체 측이 해킹 사실을 인정했다.

애슐리 매디슨에 대한 해킹은 수백, 수천만 개의 사용자 계정을 보유한 사이트를 대상으로 하는 끊임없는 공격의 최근 사례다. 이렇게 해킹된 사이트의 계정 정보는 이곳저곳에 유포된다. 크래커는 사용자 계정을 공격하기 위해, 그리고 화이트해커들은 사용자에게 경고하기 위해 즉시 유포된 데이터를 살펴보고 있다.

이러한 계정 침해 사건들, 특히 최근 라스트패스(LastPass) 계정 정보 침해 사건을 보며 필자가 내린 결론은 사람들이 고유한 비밀번호가 아닌 강력한 비밀번호에 지나치게 집착하고 있다는 것이다.

필자는 몇 년째 고유한 비밀번호의 중요성을 주장하고 있으므로 자주 찾는 독자라면 필자가 이 이야기를 또 꺼내는 것이 지겨울지도 모르겠다. 그러나 사람들은 많은 곳에서 여전히 똑같은 비밀번호를 사용 중이고, 그중 상당수는 강력한 비밀번호조차 아니다. 그러니 이 이야기를 또 할 수밖에 없다.

비밀번호 강도의 허와 실
강력한 비밀번호란 가족 중 누군가의 이름, 애완동물의 이름, 과거나 현재의 주소 일부와 같은 그 사람의 개인 정보를 통해 유추할 수 없는 비밀번호를 말한다. 강력한 비밀번호는 무차별 공격(brute force)에 대한 저항력도 강해야 한다. 크랙된 사이트의 분석 보고서를 보면 많은 사람들이 “123456”이나 “password”를 비밀번호로 사용하고 있음을 알 수 있다.

필자는 몇 개월 전 비밀번호에 대해 구체적인 요구 사항을 제시하는 사이트 대부분이 사실상 비밀번호를 더 강화하지 못한다는 사실을 밝혀낸 비밀번호 및 보안 연구자들과 이야기를 나눈 적이 있다. 심지어 사이트에 표시된 취약한 비밀번호를 나타내는 막대가 초록색으로 표시되는 경우라 해도 마찬가지였는데, 애플 사이트의 비밀번호 강도 표시기도 예외는 아니었다. 이유는 이러한 사이트의 비밀번호 강도 판단 기능은 단순히 사용자가 선택한 문자가 대/소문자의 조합, 숫자, 기호 등으로 다양성(또는 “엔트로피”)을 갖추었는지만 분석하기 때문이다. 다양한 문자 조합을 사용한 경우 무차별 공격에서 시도할 문자 조합의 수가 늘어나므로 비밀번호 강도는 초록색으로 높게 표시된다.

초록색 막대가 표시되었지만, 사실은 매우 취약한 비밀번호다.

그러나 “Password1!”은 크래커가 아주 쉽게 알아낼 수 있는 비밀번호다. 현재 크래커들은 이전의 대규모 크랙을 통해 추출된 정보를 기반으로 선별적인 경로를 취하기 때문이다. 최근 크랙에 사용되는 도구들은 사람들이 필요한 복잡성을 최소한으로 충족하는 경향이 있다는 사실을 알고 있다. 즉, “Password”(대/소문자가 요건 충족)를 입력하고 그 뒤에 키보드의 첫 번째 숫자와 그 숫자와 동일한 키를 사용하는 특수 문자를 입력한다. 그러면 비밀번호 강도 표시기는 초록색이 된다. 물론 실제로는 매우 위험한 비밀번호다.

필자가 이전에서 썼듯이 함께 사용되는 경우가 드문 충분히 긴 길이의 단어 조합, 예를 들어 “Christmas penguin haircut”이 ““B@z00ka!!” 또는 “JWT74PV5JVaj”와 같은 비밀번호가 훨씬 더 크랙하기 어렵다. 단어 3개로 이루어진 비밀번호임을 크래커가 안다고 해도 그 조합이 온라인 텍스트(웹 페이지나 책)에서 일반적으로 찾을 수 없는 조합인 경우 이를 찾기 위해 시도해야 할 반복 횟수가 엄청나게 많아지기 때문이다. (“Call me Ishmael”과 같은 비밀번호는 좋지 않음).

강력한 비밀번호는 기본적인 조치만을 취한 사이트를 대상으로 한 크랙에 강하지만, 고유한 비밀번호는 한 번의 유출로 인해 모든 곳에 개인 정보가 노출되는 경우를 방지해준다.

“눈송이처럼 녹는다” 강력한 비밀번호 하나를 여러 곳에 사용하지 말아야
강력하게 보호되는 약한 비밀번호는 강력한 비밀번호만큼의 효과가 있다. 반대로 엔지니어링 또는 설계상의 결함으로 인해 유출된 강력한 비밀번호는 취약한 비밀번호 못지않게 약하다.

강력한 비밀번호 하나를 여러 곳에 사용한다면, 이는 각 사이트나 서비스가 저장하거나 전송하는 데이터에 대해 도/감청을 차단하는 견실한 프로세스를 두고 있으며, 또한 적절한 방법을 통해 사용자 비밀번호를 암호화된 형태(해시)로 저장하고 있음을 전제로 하는 것이다.

하나의 강력한 비밀번호를 모든 곳에서 사용한다면 비밀번호나 스토리지를 보호하지 않는 업체에서 침해가 발생할 경우 다른 모든 사이트의 비밀번호도 노출된다. 이러한 경우를 막기 위한 한 가지 방법은 1패스워드(1Password), 라스트패스 또는 기타 비밀번호 관리 앱을 사용하여 기억할 필요가 없는 강력하고 고유한 비밀번호를 생성하는 것이다. 그러면 한 곳이 노출되더라도 최악의 경우 그 사이트 한 곳의 접근 정보만 노출된다.

비밀번호 탈취 위험을 완화하는 사이트들도 있다. 라스트패스의 경우 계정 정보가 유출되었지만, 비밀번호를 저장하는 방법에 대한 이들의 설명이 사실이라면 사용자 비밀번호가 대량으로 복호화될 가능성은 거의 0에 가깝다. 라스트패스에 저장된 비밀번호 힌트를 동원해서 특정 개인을 대상으로 시도한다면 그 사람이 비밀번호를 바꾸기 전에 크랙이 가능할 수도 있겠지만 모든 비밀번호에 대한 무차별 공격은 효과가 없을 것이다.

필자는 최근 한 업체와 함께 일했는데, 이들이 사용 중이던 모듈 하나가 업데이트되면서 예전 방식에서 새로운 암호화된 스토리지 방식으로 전환하기 위한 프로그래밍 작업을 했다. 예전 스토리지도 문제없었고 사이트에 개인 정보나 결제 관련 정보가 저장된 것도 아니었다. 그러나 등록된 사이트 방문자가 다른 곳에서 동일한 비밀번호를 사용할 경우, 침해 사건이 발생하면 상기한 것과 같은 문제에 노출된다. 업그레이드는 저장된 비밀번호를 대상으로 무차별 공격을 감행한 크래커가 그 결과를 다른 계정의 동일한 일반 텍스트 비밀번호와 대조하여 맞추지 못하도록 하는 기능을 한다. (이 시스템은 해싱한 다음 비밀번호에 무작위 값을 추가하는 솔팅(salting)을 사용한다. 솔트는 두 개의 동일한 비밀번호가 동일한 저장된 결과를 생성하는 경우를 방지해준다.)

자신이 기억하지 못하는 여러 개의 고유한 비밀번호를 사용한다는 것이 어색하고 위험하게 생각될 수 있지만 강력한 비밀번호 하나를 사용하는 것이 더 위험하다. 필자는 1패스워드를 사용하고 비밀번호 데이터베이스를 드롭박스에 저장한다. 1패스워드는 클라이언트 소프트웨어에서 라스트패스가 클라이언트 및 서버에 사용하는 것과 동일한 기법을 사용하여 항상 데이터베이스를 암호화하고 복호화한다. 이 방법은 연산 부담을 크게 가중하므로 누군가가 필자의 비밀번호 캐시를 입수하여 크랙하려면 몇년, 또는 몇 십 년이 걸릴 것이다.

필자가 기억해야 할 강력한 비밀번호는 딱 하나, 1패스워드 데이터를 보호하는 마스터 비밀번호다. 이 비밀번호는 온라인 사이트에 입력되는 일도 없고 다른 곳에 사용되지도 않는다. 직관적이지는 않지만, 비밀번호 크랙은 사슬의 연결 고리 중 가장 취약한 고리를 이용한다. 다른 부분의 고리가 강력하다 해도 취약한 고리가 끊어지는 것을 막아주진 못한다. editor@itworld.co.kr 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.