5일 전

무차별 대입 공격의 정의와 증가 이유, 방어 방법

Dan Swinhoe | CSO
무차별 대입(brute-force) 공격은 인증 정보(사용자 이름과 비밀번호)를 알아내기 위해 공격자가 반복적, 체계적으로 매번 다른 사용자 이름과 비밀번호를 입력하는 방식의 공격이다. 단순하지만 리소스를 많이 소비하는 시행착오 기반의 접근 방식으로, 보통 자동화된 툴이나 스크립트 또는 봇을 사용해 액세스 권한을 획득할 때까지 가능한 모든 조합을 대입한다.
 
© Getty Images Bank

보안 업체 카스퍼스키(Kaspersky)의 수석 보안 연구원인 데이비드 엠은 “오래된 공격 방법이지만 여전히 효과적이며 해커들 사이에서 인기가 있다. 무차별 대입 공격은 원격 네트워크의 디바이스를 대상으로 비밀번호, 비밀 문구, 사용자 이름, 개발 식별 번호(PIN)와 같은 개인 정보를 획득하기 위한 공격에 자주 사용된다”라고 말했다.

그러나 저장된 인증 정보의 비밀번호가 길고 암호화 수준이 높을수록 이 공격이 성공하기 위해 필요한 시간과 컴퓨팅 성능도 높아진다. 따라서 이런 방법으로 공격이 사실상 불가능한 수준까지 무차별 대입 공격의 효과를 낮출 수 있다.

2017년에는 영국과 스코틀랜드 의회가 무차별 대입 공격의 피해를 보았고, 1년 뒤에는 북아일랜드 의회를 대상으로도 비슷한 공격이 일어났지만 성공하지 못했다. 다음 해에는 캐세이 퍼시픽(Cathay Pacific) 항공이 무차별 대입 공격을 받았는데, 영국 데이터 감독 기관은 충분한 예방 수단을 두지 않았다는 이유로 캐세이 퍼시픽에 50만 파운드(약 63만 달러) 벌금을 부과했다. 광고 차단 서비스인 애드 가드(Ad Guard) 역시 무차별 대입 공격을 받은 이후 모든 사용자를 대상으로 강제 비밀번호 재설정을 했다.
 

무차별 대입 공격의 원리

무차별 대입 공격은 웹사이트 또는 애플리케이션의 로그인 페이지를 노리는 스크립트 또는 봇을 통해 실행되는 경우가 많다. 스크립트와 봇은 가능한 모든 키 또는 비밀번호의 조합을 돌아가면서 시도한다. 무차별 대입 공격은 보통 웹사이트 또는 애플리케이션, 암호화 또는 API 키 및 SSH 로그인의 비밀번호 크랙에 활용된다.

엠에 따르면 비밀번호 크랙 공격은 공격자의 킬 체인 중 한 단계에 불과하다. 이 공격으로 사용자, 이메일, 뱅킹 또는 SaaS 계정에 대한 액세스 권한을 획득하거나 API 또는 기타 로그인 및 인증 정보가 필요한 서비스에 침입할 수 있다.

여기서부터 공격자는 원래의 목적에 따라 행동한다. 엠은 “사이버 범죄자는 성공적인 무차별 대입 공격으로 네트워크의 대상 컴퓨터에 대한 원격 액세스 권한을 획득한다. 이런 공격자의 주된 목표는 개인 정보를 획득해 온라인 계정과 네트워크 리소스에 액세스하는 것이다. 이후 피싱 링크를 보내 가짜 콘텐츠를 퍼뜨리거나 제3자에 판매할 인증 정보를 빼낼 수 있다”라고 말했다.

특정 사이트의 비밀번호를 추정하는 과정은 많은 노동과 시간이 드는 작업이다. 그래서 해커는 더 빠른 작업을 위한 툴을 개발했다. 브루투스(Brutus), 메두사(Medusa),THC 하이드라(THC Hydra), 엔크랙(Ncrack), 존 더 리퍼(John the Ripper), 에어크랙-ng(Aircrack-ng), 레인보우(Rainbow) 등 무차별 대입 공격을 보조하는 자동화된 툴도 있다.

엠은 “이런 툴을 이용하면 단일 사전 단어로 된 비밀번호는 1초 만에 찾을 수 있다. 이와 같은 툴은 많은 컴퓨터 프로토콜(FTP, MySQL, SMPT, 텔넷 등)을 대상으로 작동하며 무선 모뎀을 크랙하고 취약한 비밀번호를 찾고 암호화된 스토리지의 비밀번호를 해독하고 단어를 인터넷 속어로 변환할 수도 있다. 예를 들어 ‘don'thackme’는 인터넷 속어로 ‘d0n7H4cKm3’이 된다”라고 말했다.

무차별 대입 공격의 성공을 판단하는 기준은 비밀번호를 크랙하는 데 소요되는 시간이다. 비밀번호의 길이가 길수록 이를 크랙하는 데 필요한 시간이 기하급수적으로 늘어난다. 클라우드플레어(Cloudflare)에 따르면 초당 1,500만 회의 키 입력 시도를 사용할 경우 7자로 된 비밀번호는 9분 만에 크랙된다. 그러나 같은 방식으로 13자 비밀번호를 크랙하는 데는 35만 년이 걸린다.

마찬가지로, 암호화 키의 길이가 길수록 무차별 대입 공격으로 키를 알아내는 데 필요한 시간과 리소스가 늘어난다. 128비트 암호화 키의 가능한 조합 수는 2,128개이고 256비트 암호화의 경우 공격자가 시도해야 할 조합의 수가 2,256개에 이른다. 현재 기술에서 가능한 모든 조합을 시도하는 데는 몇조 년이 걸린다.

엠은 “비밀번호의 길이와 복잡성에 따라 크랙하는 데 소요되는 시간도 단 몇 초에서 몇 년까지 크게 차이가 난다. 실제로 IBM에 따르면, 일부 해커는 몇 개월, 심지어 몇 년 동안 매일 같은 시스템을 대상으로 공격을 시도한다”라고 말했다. 공격자가 초당 시도할 수 있는 조합의 수를 대폭 늘려주는 GPU를 사용한다 해도 비밀번호의 복잡성을 높이고 강력한 암호화를 사용하면 비밀번호를 크랙하는 데 필요한 시간을 비현실적인 수준까지 늘릴 수 있다.
 

무차별 대입 공격의 유형

일반적인 무차별 대입 공격: 가능한 모든 조합을 시도한다.
 
  • 역 무차별 대입 공격: 많은 계정을 대상으로 소수의 흔한 비밀번호를 반복 시도한다.
  • 인증 정보 스터핑: 사이트 또는 서비스에서 훔친 사용자 이름과 비밀번호를 사용해 다른 서비스와 애플리케이션의 계정을 하이재킹한다.
  • 사전 공격: 사전의 단어 또는 다른 데이터 침해에서 얻은 일반적인 비밀번호를 돌아가면서 시도한다.
  • 레인보우 테이블 공격: 공격자는 평문 비밀번호와 각 비밀번호의 해시값이 저장된 사전 계산된 사전을 사용해 해싱 함수를 반대로 되돌려 비밀번호를 알아낸다.
 

재택근무로 인한 무차별 대입 공격 증가

버라이즌의 2020년 데이터 침해 조사 보고서를 보면, SMB에서 일어나는 침해 중 무차별 대입 공격이 관련된 비율은 20% 미만이며, 대규모 조직의 경우 10% 미만이다. 이러한 추세는 2019년과 2018년의 같은 보고서와 비교해 거의 차이가 없지만, 코로나19 대유행으로 변화가 생길 가능성이 있다.

카스퍼스키의 엠은 “코로나19 대유행의 결과 전 세계 기업이 재택근무 정책을 도입했고, 이것이 사이버 위협 환경에 직접적인 영향을 미쳤다. 재택근무로의 대대적인 전환에 따라 사이버 범죄자는 취약하게 구성된 원격 데스크톱 프로토콜(RDP) 서버의 수가 증가할 것으로 판단하고 공격을 늘렸다. 3월 초부터 전 세계에 걸쳐 Bruteforce.Generic.RDP 공격의 수가 급증했다. 재택 근무자를 위해 개방된 기업 리소스가 많아졌다는 점을 고려하면 원격 액세스 인프라를 대상으로 한 공격은 당분간 계속될 가능성이 높다”라고 말했다.
 

무차별 대입 공격을 방어하는 방법

어느 한 가지 방법으로 무차별 대입 공격을 간단히 막을 수는 없지만, 기업은 공격에 필요한 시간과 컴퓨팅 리소스를 늘림으로써 공격 대상으로 매력을 낮출 수 있다. 구체적인 방법은 다음과 같다.
 
  • 길고 복잡하며 암호화된 비밀번호를 사용한다(256비트 암호화가 이상적).
  • 비밀번호 해시에 솔트(salt)를 넣는다. 엠은 "문자열을 별도의 데이터베이스에 저장하고 비밀번호를 해시하기 전에 불러와 추가하는 방법으로 같은 비밀번호를 사용하는 직원이 서로 다른 해시를 갖도록 해야 한다"라고 말했다.
  • 비밀번호 복잡성과 여러 계정에서의 비밀번호 재사용에 관한 정책을 직원에게 명확하게 전달한다.
  • 특정 시간 내의 로그인 시도 횟수를 제한하거나 특정 횟수의 부정확한 시도 이후 비밀번호 재설정을 의무화한다
  • 비밀번호 인증에 속도 제한을 적용한다.
  • 캡차(captcha)를 활성화한다.
  • 가능한 경우 다중 요소 인증을 활성화한다.
  • 가급적 비밀번호 관리자를 사용한다.

editor@itworld.co.kr


5일 전

무차별 대입 공격의 정의와 증가 이유, 방어 방법

Dan Swinhoe | CSO
무차별 대입(brute-force) 공격은 인증 정보(사용자 이름과 비밀번호)를 알아내기 위해 공격자가 반복적, 체계적으로 매번 다른 사용자 이름과 비밀번호를 입력하는 방식의 공격이다. 단순하지만 리소스를 많이 소비하는 시행착오 기반의 접근 방식으로, 보통 자동화된 툴이나 스크립트 또는 봇을 사용해 액세스 권한을 획득할 때까지 가능한 모든 조합을 대입한다.
 
© Getty Images Bank

보안 업체 카스퍼스키(Kaspersky)의 수석 보안 연구원인 데이비드 엠은 “오래된 공격 방법이지만 여전히 효과적이며 해커들 사이에서 인기가 있다. 무차별 대입 공격은 원격 네트워크의 디바이스를 대상으로 비밀번호, 비밀 문구, 사용자 이름, 개발 식별 번호(PIN)와 같은 개인 정보를 획득하기 위한 공격에 자주 사용된다”라고 말했다.

그러나 저장된 인증 정보의 비밀번호가 길고 암호화 수준이 높을수록 이 공격이 성공하기 위해 필요한 시간과 컴퓨팅 성능도 높아진다. 따라서 이런 방법으로 공격이 사실상 불가능한 수준까지 무차별 대입 공격의 효과를 낮출 수 있다.

2017년에는 영국과 스코틀랜드 의회가 무차별 대입 공격의 피해를 보았고, 1년 뒤에는 북아일랜드 의회를 대상으로도 비슷한 공격이 일어났지만 성공하지 못했다. 다음 해에는 캐세이 퍼시픽(Cathay Pacific) 항공이 무차별 대입 공격을 받았는데, 영국 데이터 감독 기관은 충분한 예방 수단을 두지 않았다는 이유로 캐세이 퍼시픽에 50만 파운드(약 63만 달러) 벌금을 부과했다. 광고 차단 서비스인 애드 가드(Ad Guard) 역시 무차별 대입 공격을 받은 이후 모든 사용자를 대상으로 강제 비밀번호 재설정을 했다.
 

무차별 대입 공격의 원리

무차별 대입 공격은 웹사이트 또는 애플리케이션의 로그인 페이지를 노리는 스크립트 또는 봇을 통해 실행되는 경우가 많다. 스크립트와 봇은 가능한 모든 키 또는 비밀번호의 조합을 돌아가면서 시도한다. 무차별 대입 공격은 보통 웹사이트 또는 애플리케이션, 암호화 또는 API 키 및 SSH 로그인의 비밀번호 크랙에 활용된다.

엠에 따르면 비밀번호 크랙 공격은 공격자의 킬 체인 중 한 단계에 불과하다. 이 공격으로 사용자, 이메일, 뱅킹 또는 SaaS 계정에 대한 액세스 권한을 획득하거나 API 또는 기타 로그인 및 인증 정보가 필요한 서비스에 침입할 수 있다.

여기서부터 공격자는 원래의 목적에 따라 행동한다. 엠은 “사이버 범죄자는 성공적인 무차별 대입 공격으로 네트워크의 대상 컴퓨터에 대한 원격 액세스 권한을 획득한다. 이런 공격자의 주된 목표는 개인 정보를 획득해 온라인 계정과 네트워크 리소스에 액세스하는 것이다. 이후 피싱 링크를 보내 가짜 콘텐츠를 퍼뜨리거나 제3자에 판매할 인증 정보를 빼낼 수 있다”라고 말했다.

특정 사이트의 비밀번호를 추정하는 과정은 많은 노동과 시간이 드는 작업이다. 그래서 해커는 더 빠른 작업을 위한 툴을 개발했다. 브루투스(Brutus), 메두사(Medusa),THC 하이드라(THC Hydra), 엔크랙(Ncrack), 존 더 리퍼(John the Ripper), 에어크랙-ng(Aircrack-ng), 레인보우(Rainbow) 등 무차별 대입 공격을 보조하는 자동화된 툴도 있다.

엠은 “이런 툴을 이용하면 단일 사전 단어로 된 비밀번호는 1초 만에 찾을 수 있다. 이와 같은 툴은 많은 컴퓨터 프로토콜(FTP, MySQL, SMPT, 텔넷 등)을 대상으로 작동하며 무선 모뎀을 크랙하고 취약한 비밀번호를 찾고 암호화된 스토리지의 비밀번호를 해독하고 단어를 인터넷 속어로 변환할 수도 있다. 예를 들어 ‘don'thackme’는 인터넷 속어로 ‘d0n7H4cKm3’이 된다”라고 말했다.

무차별 대입 공격의 성공을 판단하는 기준은 비밀번호를 크랙하는 데 소요되는 시간이다. 비밀번호의 길이가 길수록 이를 크랙하는 데 필요한 시간이 기하급수적으로 늘어난다. 클라우드플레어(Cloudflare)에 따르면 초당 1,500만 회의 키 입력 시도를 사용할 경우 7자로 된 비밀번호는 9분 만에 크랙된다. 그러나 같은 방식으로 13자 비밀번호를 크랙하는 데는 35만 년이 걸린다.

마찬가지로, 암호화 키의 길이가 길수록 무차별 대입 공격으로 키를 알아내는 데 필요한 시간과 리소스가 늘어난다. 128비트 암호화 키의 가능한 조합 수는 2,128개이고 256비트 암호화의 경우 공격자가 시도해야 할 조합의 수가 2,256개에 이른다. 현재 기술에서 가능한 모든 조합을 시도하는 데는 몇조 년이 걸린다.

엠은 “비밀번호의 길이와 복잡성에 따라 크랙하는 데 소요되는 시간도 단 몇 초에서 몇 년까지 크게 차이가 난다. 실제로 IBM에 따르면, 일부 해커는 몇 개월, 심지어 몇 년 동안 매일 같은 시스템을 대상으로 공격을 시도한다”라고 말했다. 공격자가 초당 시도할 수 있는 조합의 수를 대폭 늘려주는 GPU를 사용한다 해도 비밀번호의 복잡성을 높이고 강력한 암호화를 사용하면 비밀번호를 크랙하는 데 필요한 시간을 비현실적인 수준까지 늘릴 수 있다.
 

무차별 대입 공격의 유형

일반적인 무차별 대입 공격: 가능한 모든 조합을 시도한다.
 
  • 역 무차별 대입 공격: 많은 계정을 대상으로 소수의 흔한 비밀번호를 반복 시도한다.
  • 인증 정보 스터핑: 사이트 또는 서비스에서 훔친 사용자 이름과 비밀번호를 사용해 다른 서비스와 애플리케이션의 계정을 하이재킹한다.
  • 사전 공격: 사전의 단어 또는 다른 데이터 침해에서 얻은 일반적인 비밀번호를 돌아가면서 시도한다.
  • 레인보우 테이블 공격: 공격자는 평문 비밀번호와 각 비밀번호의 해시값이 저장된 사전 계산된 사전을 사용해 해싱 함수를 반대로 되돌려 비밀번호를 알아낸다.
 

재택근무로 인한 무차별 대입 공격 증가

버라이즌의 2020년 데이터 침해 조사 보고서를 보면, SMB에서 일어나는 침해 중 무차별 대입 공격이 관련된 비율은 20% 미만이며, 대규모 조직의 경우 10% 미만이다. 이러한 추세는 2019년과 2018년의 같은 보고서와 비교해 거의 차이가 없지만, 코로나19 대유행으로 변화가 생길 가능성이 있다.

카스퍼스키의 엠은 “코로나19 대유행의 결과 전 세계 기업이 재택근무 정책을 도입했고, 이것이 사이버 위협 환경에 직접적인 영향을 미쳤다. 재택근무로의 대대적인 전환에 따라 사이버 범죄자는 취약하게 구성된 원격 데스크톱 프로토콜(RDP) 서버의 수가 증가할 것으로 판단하고 공격을 늘렸다. 3월 초부터 전 세계에 걸쳐 Bruteforce.Generic.RDP 공격의 수가 급증했다. 재택 근무자를 위해 개방된 기업 리소스가 많아졌다는 점을 고려하면 원격 액세스 인프라를 대상으로 한 공격은 당분간 계속될 가능성이 높다”라고 말했다.
 

무차별 대입 공격을 방어하는 방법

어느 한 가지 방법으로 무차별 대입 공격을 간단히 막을 수는 없지만, 기업은 공격에 필요한 시간과 컴퓨팅 리소스를 늘림으로써 공격 대상으로 매력을 낮출 수 있다. 구체적인 방법은 다음과 같다.
 
  • 길고 복잡하며 암호화된 비밀번호를 사용한다(256비트 암호화가 이상적).
  • 비밀번호 해시에 솔트(salt)를 넣는다. 엠은 "문자열을 별도의 데이터베이스에 저장하고 비밀번호를 해시하기 전에 불러와 추가하는 방법으로 같은 비밀번호를 사용하는 직원이 서로 다른 해시를 갖도록 해야 한다"라고 말했다.
  • 비밀번호 복잡성과 여러 계정에서의 비밀번호 재사용에 관한 정책을 직원에게 명확하게 전달한다.
  • 특정 시간 내의 로그인 시도 횟수를 제한하거나 특정 횟수의 부정확한 시도 이후 비밀번호 재설정을 의무화한다
  • 비밀번호 인증에 속도 제한을 적용한다.
  • 캡차(captcha)를 활성화한다.
  • 가능한 경우 다중 요소 인증을 활성화한다.
  • 가급적 비밀번호 관리자를 사용한다.

editor@itworld.co.kr


X