얄루

레인보우 테이블(Rainbow table)이 대체 뭡니까?! (부제: 비밀번호를 왜 복잡하게 만들어야 하나요?) 본문

보안

레인보우 테이블(Rainbow table)이 대체 뭡니까?! (부제: 비밀번호를 왜 복잡하게 만들어야 하나요?)

팥죽도사 2022. 10. 30. 04:20

정의

해시 함수들(SHA256, MD5 등)을 사용하여 암호화가 가능한 값들을 정리한 표이다.

 

사용

보통 공격자들이 사용자들의 비밀번호를 알아낼 때 많이 사용한다. 해시 함수값은 복호화가 불가능해서, 암호화된 값으로 원래의 값을 알 수가 없다. 그래서 해시 암호화 값의 경우의 수를 다 써놓은 레인보우 테이블로 암호를 찾아내는 것이다.

사례

사례를 찾는 게 무의미할 정도로 무수히 많은 사례가 있다... 그 중에서 특히 사용자들이 알아야할 것은, 생각하기 쉬운(단순한) 문자와 숫자의 조합으로 비밀번호를 설정해놓는 것이 그래서 위험하다는 것. 우연히 같은 비밀번호를 사용하는 사람들이 있다면 사이좋게 계정이 폭파되는 진풍경을 목격할 수도 있다.

 

밑도 끝도 없이 1부터 9999까지, a부터 abcd까지 대입하는 공격만 생각해선 안된다. 결국 공격자도 인간이다. AI처럼 시간도 오래걸리고 실패한 공격들은 하지 않는다는 것이다... 공격자들은 학습하기 때문에, 의미있거나 단순하거나 많이 사용하는 문자들을 미리 알아놓는다.

그렇기 때문에 대입 공격에 시간이 오래 걸린다 하더라도, 의미있는 문자들로 구성된 사전대입공격에는 처참히 당할 수 밖에 없다.

특징

  1. 무차별 대입 공격, 브루트 포스(Bruteforce) 공격을 뒷받침해주는 역할을 하기도 한다.
  2. 테이블 생성에 많은 시간이 소요된다.
  3. 일종의 빅데이터이다.

출처/참고 문헌

 

이러한 문제점으로 각종 사이트에서 심심치 않게 대소문자, 특수문자, 숫자(생년월일이나 기념일과 관련없는 등의)를 모두 조합하여 비밀번호를 설정하라는 경고를 볼 수 있게 된 것이다.

 

힘내라 사용자들 .. . 

728x90

'보안' 카테고리의 다른 글

DRM이 대체 뭡니까?!  (0) 2022.12.22
통합보안솔루션의 개념에 대하여 ...  (0) 2022.11.20
SSL, TLS가 뭡니까?! +HTTP(s)  (0) 2022.11.13