전문가 기고

크리덴셜 스터핑(Credential stuffing) 공격을 막아라!

알약4 2023. 2. 1. 11:15

 


2023년 계묘년의 해가 밝자마자 통신사 및 쇼핑몰들에서 연이어 개인정보 유출 및 무단 도용 사건이 발생하였습니다. 

 

확인결과 이번 사건들은 공격자가 여러 가지의 경로로 수집한 사용자들의 로그인 인증 정보를 다른 사이트의 계정 정보에 마구 대입하여 공격하는 방식인 '크리덴셜 스터핑(Credential stuffing)'에 의해 발생한 것으로 확인되었습니다.

 

크리덴셜 스터핑 공격은 단순하지만 매우 효과적이어서 많은 공격자들이 자주 사용하는 공격방식 중 하나이기도 합니다. 

크리덴셜 스터핑 공격에 가장 효과적인 예방 방법은 2단계 인증을 설정하는 것이지만, 상황이 여의치 않을 경우 안전한 비밀번호를 만들어 사용하는 것 만으로도 충분히 예방이 가능합니다. 

 

그렇다면 안전한 비밀번호는 어떻게 만들어야 할까요?

1) 비밀번호는 최소 8자리 이상, 영어 대문자, 소문자, 숫자, 특수문자 중 3종류 이상의 조합으로 작성해야 합니다. 


해커들이 사용자들의 비밀번호를 알아내는 방법 중 하나는 브루트 포스(Brute Force) 공격(무차별 대입공격 이라고도 불림)을 통한 비밀번호 유추 입니다. 


브루트 포스 공격은 해커가 무차별 암호 대입을 통해 비밀번호를 알아내는 방법으로, 암호의 길어질수록 소요되는 시간이 기하급수적으로 증가하게 됩니다. 브루트포스 공격은 고전적인 방법이지만, 난이도가 낮고 유효한 공격방식으로 여전히 활용되고 있습니다. 

 

이러한 브루트 포스 공격을 예방하려면 영어 대문자, 소문자, 숫자, 특수문자 중 3종류 이상, 최소 8자리 이상의 비밀번호를 설정해야 합니다. 

 

2) 주기적인 비밀번호 변경


비밀번호 작성규칙에 맞는 비밀번호를 만들었다 하더라도, 데이터베이스(DB)가 해킹당하면 아무런 효용이 없습니다. 

 

계정정보가 유출되었을 경우 즉시 비밀번호를 변경해야 하며, 계정정보 유출이 발생하지 않았다 하더라도 주기적으로 비밀번호를 변경하여 계정 보안을 강화해야 합니다. 

 

비밀번호는 3개월마다 변경하기를 권고하고 있습니다. 


3) 나만의 비밀번호 작성규칙 만들기

 

크리덴셜 스터핑 공격 예방의 핵심은 사이트 별 다른 비밀번호를 사용하는 것 입니다. 

 

대부분의 사용자들이 기억하기 어렵다는 이유로 사이트마다 동일한 아이디와 패스워드를 사용합니다. 하지만 이런 경우,  A 홈페이지에서 계정정보가 유출된다면, 유출된 정보와 동일한 계정정보로 가입되어 있는 홈페이지들의 정보가 모두 유출된 것과 같은 피해를 볼 수 있습니다. 

 

이렇기 때문에 사이트 별 다른 비밀번호를 설정해야 하며, 이때 자신만의 비밀번호 작성 규칙을 만들어 적용하면 쉽게 기억할 수 있습니다. 


예를들어, 나만의 비밀번호 작성 규칙을 '도메인 앞 3글자(맨 앞자리는 대문자)' + '휴대폰 중간 4자리(예를들어 2468)' + '해당 년도' +'특수문자 2개'로 설정해 놓는다고 가정합니다. 해당 규칙에 따라 비밀번호를 생성한다면, 구글 비밀번호는 Goo24682023!@, 네이버 비밀번호는 Nav24682023!@가 됩니다. 

 

주기적으로 특수문자만 변경한다면 기억하기 쉽고 안전한 비밀번호를 생성할 수 있습니다. 


최근 개인정보 유출사건이 빈번히 발생하고 있으며, 유출된 개인정보를 활용한 2차, 3차 피해가 가속화 되고 있는 만큼 사용자 여러분들께서는 안전한 비밀번호 설정을 통해 추가 피해를 예방하시기 바랍니다. 

또한 플랫폼에서 2단계 인증 기능을 제공한다면 해당 기능을 활성화 하여 계정 보안을 향상 시키기를 권고 드립니다.