자격증과 세미나, 프로그램 이야기를 주저없이 써봅니다.

Since 2008. 10.

해킹, 보안

비밀번호 해킹, 실제로 얼마나 걸릴까?

럭키맨 운수 2012. 6. 15. 15:28

링크드인에서와 같은 엄청난 규모의 보안 사고가 발생할 때마다 보안 전문가들은 허약한 패스워드와 나태한 사용자, 그리고 문자와 숫자가 복합적으로 사용된 패스워드의 중요성에 대해 열변을 토하곤 한다.

 

그리고 특히 패스워드의 문자 수에 대해 거듭 강조를 하는데, 과연 문자수가 패스워드의 보안성에 그만큼 큰 영향을 미치는 것일까 하는 의구심을 갖게 한다. 하지만 실제로 그렇다. 패스워드의 문자수와 종류는 커다란 차이를 만들어낸다.

 

과연 얼마나 큰 차이를 있는가? 문자가 아닌 기호 하나를 패스워드에 추가하는 것 만으로도 사전 공격의 가능성을 사전에 배제할 수 있다. 이 공격은 말 그대로 사전에 있는 단어를 이용해 패스워드를 알아내려는 공격으로, 패스워드에 기호, 특히 잘 사용되지 않는 기호를 하나만 추가해도 큰 차이를 만들어낸다.

 

패스워드의 길이와 특수문자의 사용이 얼마나 큰 차이를 만들어 내는지 좀 더 구체적으로 살펴보자. 다음의 예는 인포월드의 전 칼럼니스트이자 프리웨어 개발자인 스티브 깁슨의 프로그램 “Interactive Brute Force Password Search Space Calculator”에서 나온 결과이다. 대소문자 구분없이 특수문자없는 문자와 숫자의 조합으로 이루어진 패스워드를 기준으로 했다.

 

6자 : 22억 5,000만 개의 조합 가능

 

-  온라인에서 대상 사이트를 공격하는 웹 앱(초당 1,000번의 추측 가능)을 사용하는 경우 : 3.7주

-  오프라인에서 고성능 서버나 데스크톱(초당 1,000억 건의 추측 가능)을 사용하는 경우 : 0.0224초

-  오프라인에서 대규모 병렬 처리 클러스터나 그리드(초당 100조 번의 추측 가능)를 사용하는 경우 : 0.0000224초

 

10자 : 3760조 개의 조합 가능

 

-  온라인에서 대상 사이트를 공격하는 웹 앱(초당 1,000번의 추측 가능)을 사용하는 경우 : 3.7주

-  오프라인에서 고성능 서버나 데스크톱(초당 1,000억 건의 추측 가능)을 사용하는 경우 : 10.45시간
-  오프라인에서 대규모 병렬 처리 클러스터나 그리드(초당 100조 번의 추측 가능)를 사용하는 경우 : 37.61초

 

6자 : 7조 6,000억 개의 조합 가능

 

-  온라인에서 대상 사이트를 공격하는 웹 앱(초당 1,000번의 추측 가능)을 사용하는 경우 : 240년

-  오프라인에서 고성능 서버나 데스크톱(초당 1,000억 건의 추측 가능)을 사용하는 경우 : 1.26분

-  오프라인에서 대규모 병렬 처리 클러스터나 그리드(초당 100조 번의 추측 가능)를 사용하는 경우 : 0.0756초

 

10자 : 171,269,557,687,901,638,419(171.3Xextillion)개의 조합 가능

 

-  온라인에서 대상 사이트를 공격하는 웹 앱(초당 1,000번의 추측 가능)을 사용하는 경우 : 54억 4,600만 년

-  오프라인에서 고성능 서버나 데스크톱(초당 1,000억 건의 추측 가능)을 사용하는 경우 : 54.46년

-  오프라인에서 대규모 병렬 처리 클러스터나 그리드(초당 100조 번의 추측 가능)를 사용하는 경우 : 2.83주

 

스티브 깁스의 결론이자 조언은 “10자짜리 패스워드에 특수문자를 추가해라”이다.

 

출처: 한국 IDG