Android

Burp Suite 설치 및 HTTP 요청 패킷 가로채고 값 변조하기

서원근양학계정 2022. 11. 21. 01:06

Burp Suite 설치

먼저 필요한 도구인 Burp Suite를 설치해주겠습니다.

아래의 링크에 접속해줍니다.

https://portswigger.net/burp/communitydownload

 

Download Burp Suite Community Edition - PortSwigger

Burp Suite Community Edition is PortSwigger's essential manual toolkit for learning about web security testing. Free download.

portswigger.net

 

Go straight to downloads 버튼을 눌러줍니다.

 

에디션은 무료인 Burp Suite Community Edition으로 하고 운영체제는 칼리 리눅스에서 사용할 것이기 때문에 Linux (64-bit)를 선택해줍니다.

 

DOWNLOAD버튼을 누르면 다운로드가 시작됩니다.

다운로드가 끝나면 파일을 실행시켜주겠습니다.

cd Downloads
sh burpsuite_community_linux_v2022_9_6.sh

 

약간 기다리면 새로운 창이 뜹니다.

 

경로를 적당히 지정해주고

 

 

기다리면 설치가 완료됩니다.

 

Win키를 누르거나 왼쪽 위에 있는 용을 누르면 검색창이 뜨는데 Burp Suite를 검색해서 실행시켜줍니다.

약관을 읽고 피드백을 보낼 거냐고 물어보는데 이 정도는 해줍시다.

 

임시 프로젝트를 하나 만들어주겠습니다.

 

기본 설정을 사용해주겠습니다.

 

이제 Burp Suite를 사용할 준비가 모두 끝났습니다.

 

Burp Suite 프록시 설정

위쪽에 Proxy를 선택하고 아래줄에 있는 Options를 선택해줍니다. Proxy Listeners에서 유일한 것을 선택해주고 Edit버튼을 누릅니다. 세 번째에 있는 Specific address를 선택하고 선택할 수 있는 목록을 연 다음 두 번째에 있는 IP주소를 선택하고 OK 버튼을 눌러줍니다.

두 번째에 있는 IP주소는 칼리 리눅스의 주소이므로 주소가 달라도 침착하게 선택하세요.

 

Android 프록시 설정

안드로이드의 Wi-Fi설정에 들어가서 현재 연결된 Wi-Fi의 설정을 열어줍니다.

 

왼쪽 위에 있는 연필 모양 버튼을 누른 다음 Advanced options를 펼쳐주고 Proxy에서 Manual을 선택해줍니다.

 

Proxy hostname에 칼리 리눅스의 IP주소를 Proxy port에는 칼리 리눅스 Burp Suite에서 설정했던 포트인 8080을 넣어줍니다. SAVE버튼을 눌러주면 완료됩니다.

 

HTTPS 프록시 설정

안드로이드에서 http://burp에 접속하고 CA Certificate버튼을 눌러서 cacert.der파일을 다운로드합니다.

 

Files에 들어가서 다운로드한 파일의 이름을 cacert.cer로 변경해주겠습니다.

 

 

 

Settings에 들어가서 Storage에 들어가서 Internal shared storage에 들어가서 Files에 들어가서 Download에 들어가서 cacert.cer를 더블클릭하고 Certificate name을 burp로 정해줍니다.

 

 

 

 

 

 

 

HTTP 요청 패킷 가로채고 값 변조

먼저 InsecureBankv2를 이용할 예정이기 때문에 서버가 켜져 있는 상태여야 합니다.

 

Burp Suite에서 Intercept를 off에서 on으로 만들어줍니다.

 

 

이제 InsecureBank에서 로그인을 시도해보겠습니다.

 

이 상태에서 Login버튼을 눌러도 넘어가지지 않습니다.

칼리 리눅스로 가보겠습니다.

HTTP 메시지가 보입니다.

더 자세히 보니 제가 입력했던 username과 password가 그대로 노출되어있습니다.

Forward버튼을 누르면 메시지를 정상적으로 보낼 수 있고 Drop버튼을 누르면 메시지가 없어집니다.

일단 Forward버튼을 눌러보겠습니다.

 

안드로이드로 돌아가 보면 로그인이 잘 된 것을 확인할 수 있습니다.

 

이번엔 로그인을 할 때 틀린 Username과 Password를 입력해보겠습니다.

 

칼리 리눅스로 돌아가서 확인해보니 제가 입력한 값들을 확인할 수 있습니다.

 

이 값들을 Forward버튼을 이용해서 그대로 전송하면 로그인이 안 될 것입니다. 그래서 이 값을 변조해서 로그인이 되게 해 보겠습니다.

 

값을 무사히 변조했습니다. 이 상태에서 Forward버튼을 누르고 어떤 일이 일어나는지 확인해보겠습니다.

 

분명히 로그인할 때 올바르지 않은 Username과 Password를 입력했음에도 불구하고 로그인이 된 모습입니다.

 

참고로 다른 실습을 할 때 방해가 될 수 있으므로 Wi-Fi설정은 원래대로 되돌려주세요.