CERT/웹 모의해킹 실습

[웹 해킹] 무차별 대입 (Brute Force)공격/DVWA 환경 실습/대응 방안

MAKER' 2023. 5. 21. 16:16

무차별 대입(Brute Force) 공격

  • 흔히 무차별 대입 공격이라고 불리는 공격 기법
  • 특정한 암호를 알아내기 위해 공격자가 모든 무작위 값들의 조합을 반복적으로 입력함으로써 해킹을 시도하는 공격

 

Brute Force 공격 실습

모의해킹 실습 환경

  • 우선 본 실습에 앞서 실습 환경의 경우 리눅스 환경에서 DVWA 환경을 구축한 후 가장 취약한 환경인 Low 레벨 환경에서 실습을 진행하였습니다.

Brute Force 공격 실습

  • DVWA환경에서 Brute Force 탭에 들어온 모습
  • 이곳의 사용자 계정과 패스워드를 모른다고 가정 후 Brute Force 공격을 통해 사용자 계정과 패스워드를 알아내는 공격 실습을 진행하였습니다.

Brute Force 공격 실습

  • 먼저 해당 페이지의 로그인 화면에서 사용자 계정과 패스워드 입력란에 아무 텍스트나 입력한 후 로그인 시도후 Burp suite를 이용해 패킷을 가로챈다.

Burp suite를 이용해 로그인 패킷을 가로챈 모습

  • Burp suite를 이용하여 로그인 시도 패킷을 가로챈 모습
  • 이 후 해당 패킷 조작을 Burp suite의 기능을 이용해 자동화 하기 위해 Intruder 탭으로 전송

Burp suite Intruder Tab

  • 해당 패킷을 Intruder 탭으로 전송 후 Intruder 탭으로 온 모습
  • Burp suite 의 자동화 기능을 이용해 수정할 부분 즉, 사용자 계정 값과 패스워드 값을 자동으로 수정할 것이기에 해당 부분을 사진과 같이 Add$ 버튼을 눌러 설정
  • Attack Type의 경우 모든 경우의 수를 대입하기 위해 Cluster bomb을 설정

Burp suite Intruder Tab 에서 Payloads 설정 탭

  • Brute Force 공격에 사용될 입력값 리스트를 사진과 같이 설정 후 Start attack 박스를 클릭해 공격 실행

Brute Force 공격을 수행한 결과

  • 수 차례 공격을 수행한 결과 다른 패킷들과 Length 길이가 다른 실제 로그인된 것으로 의심되는 패킷을 하나 확인할 수 있다.
  • 해당 패킷의 Payload 값을 이용해 이전 로그인 페이지에서 로그인

Brute Force 공격을 수행한 결과

  • Brute Force 공격에 성공하여 로그인에 성공한 모습을 확인할 수 있다.

 

Brute Force 대응 방안

  • 길고 복잡한 암호 ( 대/소문자, 특수 문자 포함 10자 이상 등 ) 사용을 강제한다.
  • 특정 횟수 잘못된 암호를 사용하여 로그인 시도 시 계정 잠금 등의 조치를 취한다.
  • CAPTCHA를 로그인 과정에 추가시켜 컴퓨터를 이용한 자동화 공격을 방지한다.
  • 특정 계정은 특정 IP대역에서만 접속할 수 있도록 옵션을 설정한다.
  • MFA(Multi-Factor Authentication)를 사용하여 추가적인 사용자 인증 과정을 거치도록 한다.