문서 보기문서 편집수정 내역 사전 공격 (r0 버전으로 되돌리기) [include(틀:이론 컴퓨터 과학)] [목차] == 개요 == {{{+1 [[辭]][[典]][[攻]][[擊]] / dictionary attack}}} 암호화되어 저장된 [[비밀번호]]를 알아내기 위한 공격방법 가운데 하나. 주로 암호학에서 쓰이고는 있지만 [[동적 계획법]] 중 하나라 생각하면 [[알고리즘]]에도 포함될 수 있다. '0000', '1234', 'qwerty', 'password', '[[1q2w3e4r]]'처럼 비밀번호로 자주 쓰이는 문자열들을 대입해서 암호를 찾아내는 방법이다. 널리 사용되는 단어나 날짜, 전화번호 등과 같은 패턴들을 사전 형태로 만들고 이들을 조합하는 방식으로 공격한다. [[브루트 포스]]와 마찬가지로 뚫릴 때까지 끝없이 시도하는 임의 대입법이라 [[삽질]]로 생각하는 사람들이 많은데, 의외로 적중확률이 높은 공격방법이다. 이는 사람들이 기억하기 쉬운 단순한 단어들을 조합해 사용하거나, 또는 자신의 생일이나 전화번호, 이름 이니셜 등과 같은 특정한 패턴을 사용하는 경향이 있기 때문이다. 특히, 사람들은 보통 귀차니즘에 빠져서 동일한 비밀번호를 쓴다거나 거의 비슷한 비밀번호를 쓰는 경향이 많다. 게다가 한 번 털린 비밀번호는 공격자가 사전에 등록해놓고 계속 이용해먹는 경우가 많기 때문에, 하나가 털렸으면 죄다 털린다. 그렇기에 어디서 비밀번호가 노출된 적이 있다면 비밀번호 패턴을 완전히 바꾸는 것이 가장 바람직한 방법이다. 참고로 숫자나 특수문자를 썼다고 자신의 비밀번호는 안전하다고 믿는 사람들이 있는데, 지나치게 과신하는 것은 금물이다. 어차피 사람들 생각하는 것이 다르다곤 하지만 실제 까보면 별 차이도 없을 뿐더러, 대개 간단하게 조합하는 경향이 있기 때문이다. 대표적으로 "he11o^th3r3"같은 [[리트|leet]]체는 거의 직빵으로 털린다. 비밀번호가 해커에게 유출된 적이 있는 것인지 [[https://haveibeenpwned.com/Passwords|확인해 주는 사이트]]도 있다. 만일 자신이 쓰는 비밀번호가 유출된 적이 있다면 바꾸는 것이 좋다. 1234나 1234qwer처럼 간단한 비밀번호는 수십~수백만번 털렸다고 뜬다. 심지어 [[진폐증|Pneumonoultramicroscopicsilicovolcanoconiosis]]도 1회 털렸다고 한다. == 방어 방법 == 사전 공격에 강한 비밀번호를 만드는 방법은 어떤 사전을 찾아봐도 도저히 나올 수 없는 조합으로 만드는 것이다. 알다시피 사전 공격은 적중도가 높기는 하지만, 생일, 단어 등과 전혀 상관없이 의식의 흐름대로 비밀번호를 막 지은 뒤에 달달 외워 사용하면 충분히 방어할 수 있다. 한국의 경우 [[이병민|dlqudals]]처럼 영타로 치면 외국 쪽에서는 [[뭥미]] 수준의 조합이 된다. (다만, 해커가 한국인이거나 한국어를 아는 해커가 공격할 수 있으므로 실제로는 저렇게 지으면 안 된다. 위의 사이트에서 확인 결과 '''이미 털렸다'''.--[[섹스]] 영어체도 털렸다.--)[* 일단 한국어 단어, 혹은 한국인 이름 영어로 친 것들은 요즘은 거의 사전에 있다고 보면 될 것이다.] 하지만 이렇게 만든 암호는 해커는 물론 사용자의 '사전'에도 없는 것이라 기억하기 참으로 곤란하다. 이를 깨는 방법으로 [[레인보우 테이블]]이 있긴 한데, 원문에 [[솔트]] 문자열을 끼워넣는 것으로 어느 정도 대응이 가능하다. 이 경우는 특히 [[해쉬]]에 주로 응용된다. == 기타 == [[SK컴즈 개인정보 유출 사건]] 때 [[MD5]]가 보안에 취약하다는 이야기가 많이 나왔는데, 이 문제와 관련이 있다. 나온 지 오래된데다 사용률이 높다 보니 사전 분량도 방대하기 때문. 본격 해킹 게임 [[업링크]]에서도 등장한다. 다른 해킹 어플리케이션들에 비해 가격이 싸며 실제로도 꽤 싼 편이다. 싸구려는 인터넷만 잘 뒤져도 공짜로 얻을 수 있고, 한국어용 알파벳 사전 파일도 중국쪽에서 싸게 싸게 만든다. == 관련 문서 == * [[salt]] * [[브루트포스 공격]](brute-force attack) * [[트루크립트]] * [[드루킹 여론조작 사건/특검]] - 사전 공격을 통해 암호화된 컴퓨터를 해독하였다. [[분류:해킹/기법]] [[분류:알고리즘]]캡챠되돌리기