공시 한 판

정보보호론 개념서 · 해킹 기법과 사회공학

패스워드 공격의 종류와 방어

설명 영상 패스워드 공격의 종류와 방어 · 2:00

핵심 정리

패스워드 공격은 정상 사용자의 비밀번호를 알아내 인증을 통과하려는 공격이다. 대표 유형은 무차별 대입, 사전 대입, 레인보우 테이블 공격이며 대입할 값을 어떻게 고르고 준비하느냐에 따라 구별된다. 특정 값을 찾기 위해 가능한 모든 조합을 시도하는 공격은 무차별 대입 공격이다. 길이가 길고 여러 문자 종류를 조합한 패스워드는 이 공격에 대한 안전성이 높다.

사전 대입 공격은 흔히 쓰이는 패스워드 목록을 이용해 대입하는 패스워드 공격이다. 대입 대상이 전수 조합이 아니라 목록에 한정되어, 수십만 개의 단어를 짧은 시간 안에 처리할 수 있다는 것이 특징이다.

솔트는 비밀번호에 난수를 덧붙여 해시하는 기법이며, 해시 값을 미리 계산한 사전이나 레인보우 테이블을 무력화하여 사전 공격에 대한 취약성을 줄인다. 같은 비밀번호를 쓰는 사용자가 있어도 해시값이 달라 중복 사용을 발견하기 어렵다. 솔트를 쓰면 오프라인 사전 공격과 레인보우 테이블 공격을 어렵게 한다.

레인보우 테이블은 사전 계산된 해시 표로 패스워드를 찾는 공격에 쓰인다. 계산 처리에 상당한 투자가 필요해 14자리 이상 길이의 레인보우 테이블은 아직 흔하지 않으므로, 14자보다 긴 비밀번호를 선택하면 공격자가 무차별 대입 방법을 쓰도록 강제할 수 있다. 14자보다 긴 비밀번호 선택

Brute Force 공격은 특정 단어나 문자 조합을 성공할 때까지 대입해 계정 정보를 얻는 공격이다. Telnet, FTP 같은 서비스는 무차별 대입 공격의 대상이 될 수 있으며, 포트 변경, 패스워드 변경, 필터링 툴 사용 등으로 이 공격을 막을 수 있다.

자세히

무차별 대입 공격의 원리

무차별 대입은 대입할 값을 미리 좁히지 않는다는 점에서 사전 대입과 갈린다. 공격자는 정답을 모르는 상태에서 가능한 조합을 차례로 시도하고, 맞는 값이 나오면 계정 정보를 얻는다. 그래서 이 공격의 비용은 조합의 수와 시도 속도에 따라 정해지며, 패스워드의 길이와 문자 종류가 방어의 핵심 변수가 된다.

솔트의 역할과 한계

솔트는 비밀을 숨기는 장치가 아니다. 솔트는 해시값과 함께 평문으로 저장되므로, 그 역할은 같은 비밀번호가 같은 해시를 만들지 않도록 사용자마다 계산을 달리하는 데 있다. 솔트는 해시를 사용자마다 다르게 따라서 솔트는 해시 표를 미리 준비하는 공격을 어렵게 할 뿐, 짧거나 단순한 비밀번호를 대입으로 찾는 것까지 막지는 못한다.

이어지는 내용

로그인하면 하루 5페이지까지 무료로 전체를 읽을 수 있습니다.

앱에서 이 절 읽기