본문 바로가기

웹 모의해킹 스터디/수업 정리

모의해킹의 꽃 Burp Suite (버프슈트)와 proxy에 대해 알아보자

1. Proxy 서버란?

클라이언트와 서버가 중간에 거쳐 가는 서버

프록시를 사용하지 않는 경우 클라이언트의 요청
브라우저 -> 서버

프록시를 사용하는 경우 클라이언트의 요청
브라우저 -> 프록시 -> 서버

응답도 마찬가지로 프록시 서버를 거쳐간다. 위 과정과 방향만 반대로 거쳐간다.


2. Burp Suite

burp suite를 부르는 방식은 버프슈트, 버프 스위트, 버프 스윗 등 다양한데 나는 보통 버프슈트라고 부른다.

버프슈트는 프록시 서버를 제공하고, 모의해킹에 사용되는 다양한 기능들을 제공하기 때문에 모의해킹에 필수적이다. 아마 모의해킹을 공부 한다면 알 수 밖에 없을 것이다.

아직은 나도 공부를 하고 있는 과정이기 때문에 공부하며 익힌 기능들을 정리해본다. 

 

Proxy : web browser와 web server 중간에 위치하여 패킷을 확인한다. 버프슈트에서 가장 자주 사용된다. 이 기능으로 패킷을 가로채서 요청/응답을 확인하거나 변조/삭제할 수 있다.

Intruder : web application에 대해 사용자가 정의한 자동화 공격을 수행한다. 대표적으로 브루트포스 공격에 사용된다.

Repeater : web application의 응답을 분석하기 위해 여러 개의 변조된 HTTP 요청을 전송한다. 변조된 요청에 대한 응답을 바로 바로 확인할 수 있어서 이 기능도 자주 쓰인다.
특히 Blind SQL Injection 실습할 때 많이 사용했다.

Decoder : 암호화된 데이터를 복호화(decoder) 하거나 평문의 데이터를 암호화(encoder)의 기능을 제공한다. url, base64등 다양한 형식의 인코딩과 디코딩을 제공한다.


3. Burp Suite로 proxy 이용하기

그렇다면 실제 Burp Suite로 proxy기능을 사용해보자. 

우선 Proxy -> Proxy Settings -> Proxy Listener 이동한다.

Listener는 모든 요청과 응답을 가로채는 Burp의 사용자 주도 워크플로우의 핵심이라고 한다.

기본적으로 127.0.0.1:8080으로 설정 되어있는 것을 확인할 수 있다. (이미 기본 설정이 되어있기 때문에 굳이 건드리지 않아도 된다. 만약 8080포트가 사용중 이라면 여기서 변경한다.)

 



이제 127.0.0.1:8080을 프록시 서버로 사용하기 위해서 브라우저 설정을 변경해야한다.

설정 -> 네트워크 및 인터넷 -> 프록시 이동 후 수동 프록시 설정에서 프록시 서버 사용 편집 클릭!

 

 

프록시 서버 사용을 키고 listener에서 설정된  ip 주소 (127.0.0.1)와 포트 번호(8080)을 적어준 후 저장을 누르면 프록시 서버 설정은 완료된다.

 

 

 

열심히 웹 서핑을 하며 여기저기 돌아다닌 후
Proxy -> HTTP History 를 통해 오고간 패킷을 확인해보면

 

 

이렇게 잘 나오는 것을 확인할 수 있다!