Brute force 공격(무작위 대입 공격)

 

Brute force 공격 이란 사용자의 패스워드를 알아내기 위한 공격이다.

 

 

알파벳 순

 


가장 단순한 방법으로 사용자가 직접 알파벳, 숫자 순으로 차례대로 대입 하는 방법

 

 

 

 

 

 

 딕셔너리 공격 

 


 사람들이 자주 사용하는 패스워드 위주로 입력하는 방법으로 마치 패스워드로 이루어진 사전을 이용하는 것처럼 공격하여 붙여진 이름

이러한 Brute force 공격 작업을 도와주는 프로그램들이 있는데 우리는 Burp Suite의 intruder 기능을 이용해 보자. 
우선 Burp Suite의 Proxy 탭에서 Intercept 기능이 꺼져있는지 확인 한다. 켜져있다면 꺼준다.

 

intercept 기능은 실시간으로 요청을 변경할 때 이외에는 꺼두는게 좋다.

 

 

 

다음으로 DVWA에서 Username : admin, Password : aaaa를 입력해 본다.

 

 

 

 


Burp Suite의 Proxy -> HTTP history로 가서 가장 최근의 요청을 보면 내가 입력한 username과 password를 확인할 수 있다.

 

 

 

 


요청을 찾았다면 해당 요청에 마우스 오른쪽 버튼을 클릭해서 Send to Intruder기능으로 보낸다. Intruder 탭으로 가보면 요청이 하나 와있는 것을 확인할 수 있다.

 

 

 

 



Positions 탭으로 가보자. 아래와 같이 몇 가지 영역이 자동으로 선택되어 있는 것을 볼 수 있는데 이 부분을 쿼리 스트링 이라고 한다. 쿼리 스트링과 쿠키 부분이 일반적으로 사용자가 입력한 값이 서버로 전달되어 변수의 값으로 처리되는 부분이다.

 

 

 

 



우선 Clear 버튼으로 이 부분을 모두 지우고 우리는 password의 값만  테스트 할 것이기 때문에 password부분만 선택하고 Add버튼을 누른다.

 

§§로 선택된 영역을 다양한 문자열로 치한하여 테스하게 된다.

 

 

 

 

다음으로 Payloads 탭을 보자. Payload Sets의 Payload type에서 Brute forcer을 선택한다.

 

 

 

 

 


Payload Options를 보면 일일이 대입해 볼 문자들이 설정되어 있다.

 

 

 



Start attack 버튼을 누르면 아래와 같이 대입 공격이 시작 된다.

 

payload는 요청에 어떤 값을 보냈는지를 의미하고 응답 코드, 에러 발생 여부, 타임아웃 여부, 응답메시지의 길이를 표시

 

 

 

간단한 방법이긴 하지만 언젠가는 결국 패스워드를 찾아 낼 수 있다. 다만 시간이 많이 걸리고 패스워드 길이가 길면 길수록 사실상 불가능한 방법이기도 하다.

'IT > 웹해킹' 카테고리의 다른 글

DVWA를 통한 커맨드인젝션 공격 실습 - Low 단계  (0) 2019.11.24
커맨드 인젝션 공격 (command injection)  (0) 2019.11.22
버그바운티 제도  (0) 2019.11.22
웹 보안의 중요성  (0) 2019.11.22
모의해킹 기초 단계  (0) 2019.11.22

댓글

Designed by JB FACTORY