버프슈트 설치
웹 해킹을 입문/공부/실시 할 때 가장 많이 쓰이는 툴 중 하나가 웹 프록시(Web Proxy)입니다.
HTTP/HTTPS 웹 요청과 응답을 잠시 잡아두고, 그 패킷 내용을 확인해보거나 변조하기 용이하기 때문입니다.
이러한 웹 프록시는 종류가 다양한데, 그 중 많이 쓰이는 것 중 하나가 버프슈트(Burp suite)입니다.
공식 사이트를 방문해 보면, 버프슈트가 3가지 종류가 있는 것으로 나오는데, 딱 봐도 Enterprise와 Professional 버전에는 $표시와 금액이 표시 되어 있어서, 연간 사용료를 지급해야지 쓸 수 있는 버전임을 알 수 있습니다.
저희는 가난하기 때문에, 무료 버전인 Community 버전을 사용하도록 합니다.
Burp suite community version을 다운받아서 설치하도록 합니다.
그리고 실행을 해 보면 Java로 만든 듯한 GUI 환경이 펼쳐집니다.
아마 Disk based project는 버프슈트의 설정값들을 프로젝트별 디렉토리에 저장해놓고 두고두고 사용할 수 있는가 봅니다.
Community는 Temporary Project만 사용가능하답니다. 따라서 하단의 Next를 누릅니다.
config 값들을 파일로 갖고있는 것은 Community 버전에도 가능한가봅니다. 기본 값으로 설정하고 우측 하단의 Start Burp를 눌러보겠습니다.
뭔가 기능이 많이보이는 GUI가 나타납니다. 일단 여기서는 Intercept 기능만 사용해 볼 것입니다.
우측 상단의 Alerts를 눌러보면,
위와 같은 메시지가 떠있는 것을 알 수 있는데요, 프록시 서버가 로컬호스트 8080포트에서 시작되었음을 알 수 있습니다.
프록시 설정 - 인터넷 옵션
이제 그러면, 웹 브라우저에서 버프슈트를 잘 받아들이도록 설정을 해보도록 하겠습니다.
지금 하려는 설정은 프록시 설정인데, 이 프록시 설정은 크게 두가지 방법이 있습니다.
인터넷 옵션을 수정하는 방법과, 크롬 익스텐션을 이용하는 방법이 있습니다.
지금 보여드리는 방법은 인터넷 옵션을 수정하는 방법으로, 모든 웹 브라우저가 프록시 설정이 되게 됩니다.
크롬 익스텐션을 이용하는 방법은 크롬에서만 프록시가 설정되도록 할 수 있고 좀 더 디테일한 설정이 가능합니다.
일단은 인터넷 옵션 설정부터 보여드리겠습니다.
저는 크롬브라우저를 주로 사용하므로, 크롬 브라우저 기준으로 설명드리겠습니다.
크롬 브라우저 우측 상단의 점 3개 짜리 더 보기 아이콘을 누른 뒤, 설정으로 들어갑니다.
스크롤을 쭉 내려서 가장 아래로 간 뒤, 고급 을 누릅니다.
그리고 다시 가장 아래로 스크롤을 내린 뒤, "프록시 설정 열기"를 클릭합니다.
인터넷 속성 창이 뜨는데 하단의 LAN 설정을 누릅니다.
프록시 서버에 체크박스를 체크한 뒤, 주소와 포트를 위와 같이 127.0.0.1 / 8080으로 입력한 뒤 확인 버튼을 누릅니다.
그러면 웹 브라우저 설정은 준비가 되었습니다.
이제 웹 브라우저에서 아무 페이지로 요청을 보내보도록 하겠습니다. 아직 인증서 설정은 하지 않았으니, 가급적 http 평문 페이지로 이동 요청을 해 보겠습니다.
버프슈트 Intercept 항목에 주황색으로 Highlighting이 되면서 HTTP GET 요청 패킷이 잡혔습니다.
여기서 Forward를 누르면 해당 패킷이 지나갈 수 있게 놓아주며, Drop을 누르면 패킷을 보내지 않고 버리게 됩니다.
그리고 패킷 내용에 커서를 놓고 값을 변경할 수 도 있습니다.
Intercept is on 을 눌러서 intercept is off로 만들면 패킷들이 쭈르륵하고 자기 갈 길을 가도록 할 수 있습니다.
프록시 설정 - 크롬 익스텐션 SwitchyOmega
이제는 크롬 익스텐션 중 하나인 SwitchOmega를 이용해서 프록시를 설정해보도록 하겠습니다.
일단 아까 인터넷 설정에서 프록시 설정한 부분은 원래대로 되돌려 놓어야 합니다.
https://chrome.google.com/webstore/detail/proxy-switchyomega/padekgcemlokbadohgkifijomclgjgif
아래 링크로 이동하시면 Proxy SwitchyOmega 익스텐션을 확인할 수 있습니다.
저는 이미 설치를 해 놓았기 때문에, Chrome에서 삭제라고 우측 상단 버튼이 떠 있지만, 여러분들은 설치를 해주시면 됩니다.
그리고 Proxy 설정을 원하는 사이트로 이동합니다. 저 같은 경우에는 webhacking.kr로 이동했습니다.
그리고 우측 상단에 있는 SwitchyOmega 아이콘을 눌러서 순서대로 누르게 되면 webhacking.kr 도메인에서만 프록시가 설정되도록 할 수 있습니다.
그 외에도 다양한 기능들이 있는데 이것 저것 눌러보시고 가이드를 확인하면서 사용하시면 편리함을 느끼실 수 있을 겁니다. (저는 저 기능밖에 안씁니다)
'해킹 & 보안' 카테고리의 다른 글
[HackCTF] Web - Guess me 풀이 (0) | 2019.07.16 |
---|---|
[HackCTF] Web - Hidden 풀이 (0) | 2019.07.16 |
[Lord of SQL Injection] Level 7 Orge 풀이 (0) | 2019.05.17 |
pwnable.kr 07-input NULL 바이트 인자 관련 (0) | 2019.01.17 |
[번역] 정보 보안 직종에 종사하고 싶은 사람에게 by Ivan Fratric (2) (0) | 2018.02.23 |