[Burp Suite]
- 칼리 리눅스에서 기본적으로 제공되는 침투 테스트 및 취약점 진단 도구로, 웹 애플리케이션 보안을 확인하는 데 사용된다.
- 브라우저와 서버가 HTTP/S 트래픽을 가로채고 수정하기 위한 웹 프록시 기능을 포함한다. 이를 통해 사용자는 트래픽의 다양한 측면을 분석하고 수정 및 테스트할 수 있다.
# 프록시 서버(Proxy Server)
- 프록시 서버는 클라이언트가 자신을 거쳐 다른 네트워크에 접속할 수 있도록 중간에서 대리해주는 서버를 의미한다.
- 서버와 클라이언트 사이에서 대리로 통신을 수행해주는 것을 프록시(Proxy)라고 하고, 그 기능을 하는 서버를 프록시 서버(Proxy Server)라고 한다.
- 프록시 서버는 한 번 전송한 데이터를 캐시에 저장한 후, 같은 데이터를 재요청하면 저장된 캐시를 보낸다.
- Burpsuite는 클라이언트측에 설치되어 서버와 브라우저간 통신시 주고받는 데이터를 확인하고 서버로 재전송해주는 역할을 한다.
[Burp Suite 시작하기]
♣ [Application] - [03 - Web Application Anaysis] - [Burpsuite] 순서로 진입해 Burpsuite를 실행한다.
♣ [Don't show again for thie JRE]에 체크하고 [OK]를 눌러 다음으로 넘어간다.
♣ 현재 사용할 Burpsuite는 Community Edition(무료버전)으로 [Temporary Project] 옵션만 사용 가능하다.
♣ [Use Burp defaults]를 선택하고 [Start Burp]를 눌러 다음으로 넘어간다.
♣ Burpsuite가 실행된 모습이다.
[Burpsuit 기본 설정]
♣ Firefox 웹 브라우저를 연다.
♣ Firefox [Open application menu] - [Setings]를 눌러 설정창에 진입한다.
♣ 아래쪽으로 스크롤해보면 맨 아래에 있는 [Network Setting] - [Settings]를 클릭한다.
♣ 프록시 설정 전에, 다시 Burpsuit를 열어 [Proxy] 탭의 [Proxy settins]를 클릭한다.
♣ Burpsuite이 127.0.0.0:8080을 Listening하고 있는 것을 확인할 수 있다.
(8080포트를 이미 다른 프로그램에서 사용하고 있는 경우, running에 체크가 해제되어 있을 수 있다. 이 때는 [Edit] 버튼을 눌러 포트를 변경해주면 된다.)
♣ 다시 Firefox 브라우저로 돌아와 Nework Setting에 Burpsuite가 Listening하는 곳을 통과할 수 있도록 똑같이 127.0.0.1:8080을 설정해야 한다.
- [Manual proxy configuration] - [HTTP Proxy] 에 127.0.0.1(루프백주소)를 입력하고 [Port]에는 8080번을 입력한다.
♣ 위 단계까지 진행한 경우, HTTPS를 사용하는 웹 페이지에 접속하게 되면 문제가 생긴다.
- HTTPS가 적용된 사이트에 접속시 인증서를 신뢰하지 못해 발생하는 문제로, Burpsuite의 Certificate를 Firefox에 추가시키는 작업이 필요하게 된다.
♣ Burpsuite로 돌아가 [Proxy] - [Proxy settins]를 클릭하고, [Tools] - [Proxy] - [Import / export CA certificate]를 클릭한다.
♣ [Certificate in DER format] 옵션을 선택하고 [Next]를 클릭해준다.
♣ [Select file ...]을 클릭해 인증서를 저장할 위치를 선택한다.
♣ /root/Desktop/bs.der 위치에 'bs.der' 파일명으로 저장한다.
♣ Desktop/에 저장한 'bs.der'이라는 파일이 생성되었음을 확인할 수 있다.
♣ Firefox 브라우저로 돌아가 [Privacy & Security] 메뉴에 들어간다. [Certificates] 카테고리를 찾아 [View Certificates]를 클릭한다.
♣ [import]를 눌러 저장한 인증서인 'bs.der' 파일을 선택한다. (/root/Desktop/bs.der => Burpsuite certificate)
♣ Downloading Certificate 창이 팝업되면, [Trust this CA to identify websites] 옵션을 체크하고 [OK]를 클릭한다.
[Burpsuit 실행 확인]
♣ Burpsuite을 키고(Intercept is on)로 Firefox에 들어가 웹에 접속한다. 이 때, 'https://www.naver.com/'에 접속하였다.
♣ 웹 서버에 접속을 시도하면 Buprsuite에 클라이언트 요청 패킷을 가로채어 확인할 수 있게 된다. 이 때, 브라우저는 웹 서버에 접속되지 않고 무한 로딩 상태가 된다.
- Burpsuite를 Firefox의 프록시 서버로 지정을 해놓은 상태이다. 그래서 Burp Suite가 꺼져 있게 된다면 웹 브라우저에서 서버로 가는 중간에 거쳐가야 할 프록시 서버가 꺼져있기 때문에 접속이 불가능해진다.
- Burpsuite에서 사용하는 웹 프록시 서버 주소와 포트 설정을 해주면 브라우저에서 보낸 웹 요청이 프록시 서버를 경유하게 되기 때문에 중간에 패킷을 가로챌 수 있게 된다.
- 브라우저에서 설정해놓은 주소(127.0.0.1 / localhost)와 8080 포트를 설정하면 브라우저에서 보내는 패킷은 전부 8080 포트를 경유하게 된다. 이 때 서버로 가야할 패킷을 가로챌 수 있게 되는 것이다.
공격이 될 수 있는 여러 기능들은 실제 운영되고 있는 사이트를 대상으로 실습하거나 사용하면 안된다. 법적으로 문제가 발생할 수 있으므로, 직접 가상 환경을 만들어 진행해야 한다.
실제 운영중인 사이트에 가하는 불법적인 행위는 범죄이므로 절대 실습하면 안됨을 다시 한 번 강조한다.
'정보보안 > Linux' 카테고리의 다른 글
[Ubuntu Linux] 리눅스(Ubuntu 22.04)에 도커(Docker) 설치 및 사용법 (0) | 2024.11.27 |
---|---|
[Ubuntu Linux] 리눅스 기초 사용법(User, Group, UID, GID, 권한, 디렉터리 구조) (0) | 2024.11.11 |
[Ubuntu Linux] 리눅스 기초 명령어(apt, id, pwd, ls, cd, mkdir, touch, mv, rm, cat 등) (0) | 2024.11.09 |
[Linux Server] 2. VMware 가상 머신에 Ubuntu 22.04.5 설치 및 설정 (0) | 2024.11.07 |
[Linux Server] 1. VMware 가상 머신 생성(VMware Workstation Pro 17.5.2) (0) | 2024.11.06 |