1. 버프슈트(Burp Suite)
- 프록시(Proxy) 서버를 사용하여 클라이언트와 서버가 주고받는 패킷을 가로채 위변조가 가능하게 해주는 프로그램
- 웹 취약점 점검 또는 웹 해킹에 주로 사용
1.1) 프록시(Proxy)
- 사전적 의미는 대리, 대리인
- 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해 주는 컴퓨터 시스템이나 응용 프로그램
- 즉, 클라이언트와 웹 서버 사이에 껴서 데이터를 중계해주는 역할
- 서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 가리켜 '프록시', 그 중계 기능을 하는 것을 프록시 서버라고 부름
2. 기본 설정
- 클라이언트와 서버를 오가는 패킷을 캡쳐하기 위해 버프스튜와 브라우저에 Proxy 설정을 해주어야 함
- 8080 포트를 다른 서비스가 사용하고 있는 경우 다른 포트로 변경
- 최근 IE EoS로 다른 브라우저 사용 권장
- Proxy > Intercept > Open browser를 통해 별도의 프록시 설정 없이도 패킷 캡쳐가 가능함.
- 패킷에서 한글이 깨지는 경우가 있는데, 설정된 폰트가 한글을 지원하지 않아 생기는 문제로, User options > Display에서 한글을 지원하는 폰트로 변경.
3. 기능
3.1) Dashboard
- 2.x 버전부터 생긴 기능으로, 자동화된 활동을 한 눈에 모니터링 및 제어
3.1.1) Tasks 영역
① New scan은 스캔 키능을 제공하며, Pro 버전에서만 사용이 가능
② 무료버전에서는 New live task를 통해 실시간 크롤링이 가능
3.1.2) Event log 영역
① 작업에 대한 Error, Info 등의 이벤트 로그 기록
3.1.3) Issue activity 영역
① 스캔 활동에 대한 결과가 기록되며, Pro 버전에서만 사용이 가능
3.2) Target
- 타겟 어플리케이션에 대한 정보 확인 가능
3.2.1) Site map
- 브라우저에서 방문한 모든 URL이 개별 항목으로 기록되며, 각각의 요청 및 응답에 대한 정보를 확인할 수 있음
- 도메인, 디렉터리, 파일 내용을 계층구조로 보여줌
- 필터를 통해 원하는 콘텐츠만 나타내도록 설정할 수 있음.
- request type 필터를 Show only in-scope items만 설정한 후 Site map에서 원하는 사이트에 마우스 우클릭 > add to scope로 scope를 지정해주면, 지정된 사이트에 대한 정보만 볼 수 있음.
3.2.2) Scope
- 공격하려는 대상의 범위에 대해 설정 가능
① Include in scope : 범위 내 표시
② Exclude in scope : 범위 내 차단
- 공격 대상 범위 설정 후 [캡쳐 10]처럼 설정하면, 공격하려는 범위에 대해서만 Intercept할 수 있음.
3.2.3) Issue definitions
- 버프슈트 스캐너에서 탐지할 수 있는 문제점 목록
3.4) Proxy
- 가장 많이 활용되는 기능으로, 브라우저와 웹 서버간 모든 요청 및 응답을 가로채 조작할 수 있음
3.4.1) Intercept
- 브라우저와 웹 서버간 HTTP 요청을 가로채 표하며, 요청을 조작할 수 있음
① Forward : 요청/응답 조작 후 브라우저/웹 서버로 전송
② Drop : 메시지 삭제
③ Intercept on/off : Intercept 켜기/끄기
④ Action : 현재 표시된 메시지에 대해 수행할 수 있는 동작 메뉴 표시
⑤ Open Browser : 별도의 프록시 설정 없이 Intercept 가능한 브라우저 열기
⑥ inspector : 현재 표시된 메시지에 대한 정보 표시
3.4.2) HTTP history
- 버프슈트를 통과한 모든 요청 및 응답에 대한 기록이 저장
- 패킷을 선택해 요청 및 응답 메시지 확인, 필터링 및 주석 설정 가능
3.4.3) WebSockets history
- 버프슈트를 통과한 모든 WebSockets 메시지에 대한 기록이 저장
- 패킷을 선택해 요청 및 응답 메시지 확인, 필터링 및 주석 설정 가능
3.4.5) Options
- Proxy listeners, HTTP 요청/응답 인터셉트, WebSocket 메세지 인터셉트, 응답 수정, 일치 및 교체, TLS 통과, 기타 옵션 설정 가능
① Proxy listeners - listeners 중 하나를 프록시 서버로 사용하도록 설정할 수 있음 (Burp Proxy는 listeners를 사용하여 브라우저의 HTTP 요청을 수신한다.)
② Intercept Client Requests - 클라이언트 요청 메세지 인터셉트에 대한 규칙을 지정할 수 있음
③ Intercept Server Responses - 서버 응답 패킷 인터셉트에 대한 규칙을 지정할 수 있음
④ Intercept WebSockets Messages - WebSocket 메세지의 인터셉트 여부를 개별적으로 설정할 수 있음
⑤ Response Modification - 자동 응답 수정을 통해 다양한 작업을 수행할 수 있음
⑥ Match and Replace - Proxy를 통해 전달되는 요청 및 응답의 일부를 자동으로 변경하는 데 사용
⑦ TLS Pass Through - TLS 연결을 통해 직접 전달할 대상 웹 서버를 지정하는 데 사용
⑧ Miscellaneous - Proxy 동작의 특정 세부 정보를 제어하는 옵션을 설정할 수 있음
'도구 > 네트워크' 카테고리의 다른 글
버프슈트(Burp Suite) #2 (0) | 2022.09.26 |
---|---|
쇼단(Shodan) (1) | 2022.09.25 |
와이어샤크(WireShark) (0) | 2022.07.26 |
스노트(Snort) (0) | 2022.07.19 |