신입개발자

Burp Suite 본문

개인 개발 공부

Burp Suite

dks_a 2023. 8. 31. 13:44

1. 버프 스위트란

  • 프록시 서버를 사용하여 클라이언트와 서버가 주고받는 패킷을 가로채 위변조가 가능하게 해주는 프로그램으로, 웹 취약점 점검 시 자주 사용된다.

2. 버프 스위트 다운로드 / 설치 방법

3. 기본 설정

3-1) 바로 사용하지 못하고 프록시 설정을 해야한다.

기본적으로 프록시 설정이 127.0.0.0:8080으로 되어 있다.
8080 포트를 다른 서비스가 사용하고 있는 경우에는 사용할 수 없다.
그런 경우에는 Edit 버튼을 눌러서 포트를 변경 후, Running 체크 버튼을 클릭해야한다.

3-2) 그 후, 설정 - 네트워크 및 인터넷 - 프록시에서 ‘수동 프록시 설정’을 해주어야 사이트에서 나가는 모든 요청/응답 패킷을 보고 수정할 수 있게 된다.

3-3) Burp Suite 프록시 추가 설정

Burp suite는 기본적으로는 HTTP Request에 대한 내용만 캡처해준다. 만약 HTTP Response에 대한 내용도 확인하고 싶다면 위의 체크 박스를 선택해주면 된다.  Server Responses 설정을 해야한다.

3-4 ) 프록시 확인

잘 돌아가는지 확인하기 위하여 Proxy - Intercept - Intercept is on을 클릭한다.

Open browser을 누르고 www.google.com을 검색하면 바로 구글 페이지로 가지 않고

Burp suite에 아래와 같이 HTTP GET 요청이 찍히는 것을 확인할 수 있다. 프록시 설정을 해둠으로써 인터넷 접근이 아래와 같이 바뀌는 것이다.

(프록시 설정 전) : 크롬 -> 구글
(프록시 설정 후) :  크롬 -> Burp suite -> 구글

바로 위에 나온 화면은 Burp suite가 크롬의 구글 접속 요청을 잡고 있는 것이고, Forward 를 클릭하면 그 요청을 다시 구글로 보낸다.

더이상 패킷을 잡고싶지 않다면 Proxy - Intercept - Intercept is on 버튼을 눌러서 off 로 바꿔주면 된다.

3-5 ) 한글 깨짐 방지

패킷에서 한글이 깨져 있는 경우가 있다. 이는 Burp Suite에서 설정된 폰트가 한글을 지원하지 않는 폰트라 User options - Display에서 한글을 지원하는 폰트로 변경하면 된다.

4. Burp Suite의 기능

참고 사이트 : https://grini25.tistory.com/202

1. Dashboard

자동화된 활동을 한 눈에 모니터링하고 제어할 수 있다.

2. Target

타겟 어플리케이션에 대한 자세한 정보를 확인할 수 있다.
현재 작업의 범위 내에 있는 타겟을 정의할 수 있고, 취약성 테스트 프로세스를 수행할 수도 있다.

3. Proxy

가장 많이 사용할 기능, 클라이언트와 웹 서버 간의 모든 요청 및 응답을 가로채 훔쳐보거나 변조할 수 있다.

Intercept : 브라우저와 웹 서버 간 HTTP 및 Websocket 메세지를 가로채 표시하는데, 가로챈 모든 메세지를 모니터링 및 수정할 수 있다.

Forward - 요청/응답 편집 후 서버 또는 브라우저로 전송
Drop - 서버 또는 브라우저로 전달되지 않도록 메시지 삭제
Intercept is on/off - 이 버튼을 사용하여 모든 가로채기를 켜거나 끔
Action - 현재 표시된 메시지에 대해 수행할 수 있는 동작 메뉴 표시
Open Browser - 별도의 프록시 설정 없이 Intercept 가능한 브라우저 창 켜짐

HTTP history : Burp Proxy를 통과한 모든 요청 및 응답에 대한 전체 기록이 저장
WebSockets history : Brup Proxy를 통과한 모든 WebSockets 메세지 기록이 저장
Options : Proxy listeners, HTTP 요청 및 응답 인터셉트, WebSocket 메세지 인터셉트, 응답 수정, 일치 및 교체, TLS 통과, 기타 옵션을 설정

4. Intruder

자동화된 사용자 지정 공격을 수행하기 위한 도구

[Intruder 실습] grini25.tistory.com/210?category=858418

5. Repeater

개별 HTTP 요청을 변경 및 재발급하여 애플리케이션의 응답을 분석할 수 있다.
요청을 수정해가며 계속해서 발행할 수 있으므로, 매개변수 값을 변경하거나 발행 순서를 변경하는 등 입력 값에 의한 취약점 발생을 테스트하는데 사용할 수 있다. 

6. Sequencer

웹 어플리케이션에서 제공하는 값의 임의성을 분석하기 위한 기능
세션 토큰, CSRF 방지 토큰, 암호 재설정 토큰 등과 같이 랜덤 한 중요한 데이터를 테스트할 수 있다.

7. Decoder

데이터를 암/복호화 및 해시 형식으로 변환할 수 있는 기능

8. Comparer

두 데이터 (요청/응답 등) 간의 비교를 수행하므로, 다른 입력에 대한 응답을 비교하는데 유용하게 사용

9. Logger

조사 및 분석을 위해 Burp Suite가 생성하는 모든 HTTP 트래픽을 기록

10. Extender

자체 또는 타사 코드를 사용하여 기능을 확장

'개인 개발 공부' 카테고리의 다른 글

Apache Kafka 설치부터 실행  (0) 2023.08.31
JUnit 테스트  (0) 2023.08.31
gw-manger / portal docker 실행  (0) 2023.08.31
gateway docker 실행  (0) 2023.08.31
redis docker 실행  (0) 2023.08.31
Comments