메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

초당 천억 가지 비밀번호를 조합하는 컴퓨터. 내 비밀번호, 안전할까?

한빛미디어

|

2021-01-11

|

by Paul & Brianna

8,473

암호는 수천 년동안 개인과 다른 사람 사이, 그리고 이제는 다른 컴퓨터들 사이를 식별하는 방법으로 사용되어 왔다. 아주 간단한 개념으로, 개인 간의 비밀 유지와 신원을 “증명”하는데 쓰이는 공유된 정보인 것이다.
 
IT에서의 암호, 즉 비밀번호는 다수의 사용자 작업을 위한 원격 단말기(remote terminals)가 있는 중앙 집중식으로 작동하는 메인프레임 컴퓨터와 함께 1960년대에 등장했다. 이제는 은행 PIN번호부터 다양한 웹사이트 로그인까지 모든 곳에 사용되고 있다.
 
하지만 우리가 접속하는 시스템에 왜 굳이 우리의 신원을 “증명”해야할까? 그리고 비밀번호 생성 조건은 왜 그렇게 까다로운 것일까?
 

좋은 비밀번호를 만들려면?

비교적 최근까지는 6~8자면 비밀번호로써 충분했다. 하지만 이제는 최소 길이가 정해져있는데 이는 바로 “엔트로피” 때문이다. 
 
암호에서 엔트로피는 예측 가능성의 척도다. 여기서 수학은 그리 어렵지 않지만 그래도 더 쉬운 쪽으로 살펴보자. 바로 “비밀번호 공간”이라고도 불리는 가능한 비밀번호의 수다.
 
a부터 z까지 있는 알파벳 중 비밀번호가 하나의 알파벳, 하나의 소문자라면 가능한 비밀번호는 26가지밖에 안된다. 대문자를 포함한다면 비밀번호 공간을 52가지로 늘릴 수 있다.
 
비밀번호 공간은 비밀번호 길이가 늘어남에 따라, 다른 종류의 단어가 추가됨에 따라 넓어진다.
 
비밀번호를 더 길거나 복잡하게 만들면 ‘비밀번호 공간’이 증가한다. 비밀번호 공간이 넓어진다는 것은 비밀번호 보안이 더욱 강화된다는 것을 뜻한다.
 
위 수치를 보면 이제 왜 대문자와 소문자, 숫자와 기호까지 포함한 긴 비밀번호가 권장사항인지 이해가 간다. 비밀번호가 복잡할수록 추측하는데 더 많은 시도가 필요하기 때문이다.
 
그러나 비밀번호 복잡성에 따라 발생하는 문제는 컴퓨터는 반복적인 작업에 엄청난 전문가라는 것이다. 비밀번호를 추측하는 것은 말할 것도 없다.
 
2019년에 가능한 모든 비밀번호를 생성해내는 컴퓨터가 기록을 세웠다. 자그마치 초당 비밀번호 100,000,000,000(천억)가지를 추측하는 놀라운 속도였다.
 
이러한 컴퓨터 능력을 악용하여 무작위 대입 공격(brute force attack) 프로세스인 가능한 모든 비밀번호를 다 조합하는 방식으로의 사이버 범죄 해킹이 일어날 수 있다.
 
또한 클라우드 기반 기술을 사용한다면 8글자 비밀번호는 25달러면 12분으로 충분하다.
 
 
또한 비밀번호는 보통 민감한 데이터나 중요한 시스템에 접근하기 위해 사용되는 이유로 사이버 범죄자들로 하여금 적극적으로 찾아내려고 만든다. 심지어 이메일 주소나 아이디까지 포함한 비밀번호를 사고파는 온라인 시장 돈벌이까지 이어진다.
 
호주달러 14달러면 1억개의 비밀번호를 구매할 수 있다!

비밀번호가 웹사이트에 저장되는 방법은?

웹사이트 비밀번호는 일반적으로 해싱(hashing)이라는 수학적 알고리즘으로 보호되어 저장된다. 해싱된 비밀번호는 인식할 수 없고 원래 비밀번호로 다시 되돌릴 수 없는 불가역적인 프로세스다.
 
로그인할 때 입력하는 비밀번호는 같은 방식으로 해싱되고 웹사이트에 저장된 버전과 비교되어 접속한다. 로그인할 때마다 이 프로세스가 반복되는 것이다.
 
예를들어 “Pa$$w0rd”라는 비밀번호는 SHA1 해싱 알고리즘으로 “02726d40f378e716981c4321d60ba3a325ed6a4c”라는 값이 주어진다. 직접 한번 해보면 안다.
 
해싱된 비밀번호로 가득 찬 파일에서는 무작위 대입 공격을 사용하여 모든 비밀번호 길이의 모든 조합을 시도해볼 수 있다. 이는 너무 흔해서 그 중 흔한 비밀번호와 계산된 해싱값과 함께 리스트해놓은 웹사이트까지 있다. 실제로 검색해보면 해싱값으로 해당 패스워드를 찾아볼 수  있다.
 
SHA1 패싱값인 ‘‘02726d40f378e716981c4321d60ba3a325ed6a4c’로 원래 비밀번호인 ‘Pa$$w0rd’를 구글검색으로 찾아낸 스크린샷.
 
비밀번호 리스트의 도난 및 판매는 이제 매우 흔한 일이므로 haveibeenpwned.com라는 고마운 웹사이트에서 우리들의 계정이 “야생”상태가 되버린 것인지 확인해준다. 100억개 이상의 계정 세부사항에 이르기까지 성장한 사이트다.
 
만약 이 웹사이트에서 당신의 이메일 주소가 있다면 당장 해당되는 비밀번호를 바꿔야하며 같은 비밀번호를 사용하는 다른 웹사이트 역시 해당된다.
 

결국 더 복잡한 게 답이다?

수많은 쉬운 비밀번호 방법이 사라져가고 이제 색다른 비밀번호 생성하는데에 우리가 어느정도 도가 텄다고 생각이 들 수도 있다. 하지만 안타깝게도, 2019년 SplashData 연간 비밀번호 설문조사에서는 5년간 별다를 바 없는 결과를 보여주고 있다.
 
2019년 SplashData 연간 비밀번호 설문조사에서 2015년부터 2019년 사이에 가장 흔히 쓰인 비밀번호를 공개했다.
 
컴퓨팅 기능이 증가함에 따라 복잡성이 결국 답인 것 같다. 하지만 우리는 인간이므로 매우 복잡한 비밀번호는 잘 기억하지 못한다.
 
또한 비밀번호가 필요한 시스템을 두 세개만 사용할 때는 이제 옛날 이야기다. 오늘날에는 모두 제각기 다른 (길이와 복잡성을 달리한)비밀번호로 수많은 웹사이트에 접속하는 일이 태반이다. 최근 조사에 따르면 1인당 평균 70~80가지의 비밀번호가 있는 것으로 나타났다.
 
좋은 소식은 이러한 문제들을 해결할 툴들이 있다는 것이다. 요즘은 컴퓨터 대부분이 웹 브라우저나 운영체제(operating system)에 비밀번호을 저장해주고 또한 이를 여러 기기들과 연동시켜준다.
 
Apple의 iCloud Keychain과 비밀번호를 저장해주는 Internet Explorer, Chrome 및 Firefox(신뢰성은 잘 모르겠지만)가 예시이다.
 
KeePassXC의 비밀번호 관리자(비밀번호 금고로도 불린다)는 길고 복잡한 비밀번호를 생성해주고 필요할 때 안전한 공간에 보관해주기도 한다.
 
이 공간 역시 보호받아야 하지만(일반적으로 긴 “마스터 암호”로), 비밀번호 관리자를 사용하면 웹사이트별 각각 다른 고유하고 복잡한 비밀번호를 사용할 수 있게 해준다.
 
이렇게까지 한다해도 취약한 웹사이트에서 비밀번호가 도난되는 것은 어쩔 수 없다. 그나마 설령 도난을 당했다고 하더라도 위의 경우 다른 사이트 비밀번호가 다 다르므로 죄다 다시 바꿀 걱정은 없을 것이다.
 
이러한 개선안에도 취약점은 있지만 언젠가는 또 모르는 이야기일 것이다.

 

*****

원문: A computer can guess more than 100,000,000,000 passwords per second. Still think yours is secure?

번역: 김정욱

 


Paul Haskell-Dowland, Associate Dean (Computing and Security), Edith Cowan University and Brianna O'Shea, Lecturer, Ethical Hacking and Defense, Edith Cowan University

This article is republished from The Conversation under a Creative Commons license. Read the original article.

댓글 입력
자료실