IT/지식

버프스위트(BurpSuite) 공부2_OWASP-ZAP으로 보충

FromZ 2022. 6. 24. 21:59
반응형

https://www.inflearn.com/course/boan_burpsuite/dashboard

 

[무료] 웹 서비스 해킹을 위한 버프스위트 완벽 활용 가이드 - 인프런 | 강의

웹 취약점 분석 (해킹) 을 할 때 제일 많이 사용하는 도구는 웹 프록시(Web Proxy) 서버이다. 그 중에서 버프스위트(BurpSuite)를 많이 활용하게 된다. 버프스위트를 활용법을 정기적으로 업데이트 하

www.inflearn.com

https://youtu.be/4cJ9Mgpqmpw

평소에도 챙겨보는 보안프로젝트 유튜브. 이번엔 버프스위트의 기능을 본격적으로 살펴보기 위해 인프런 강의를 참고했다.

좀 옛날 버전이긴 하지만 설명이 어렵지 않고 무료라서 부담없이 입문을 시도해볼 수 있다.


우선 Scope에 테스트용으로 네이버와 다음을 추가한 후 해당하는 도메인의 응답과 요청만을 걸러서 보여주는 것을 확인했다. 이어서 demo.testfire.net이라는 가상의 취약한 사이트에 접속 후 디렉토리와 파일 구조를 분석하는 실습이 있었다.

그런데 여기서 Spider라는 기능을 쓴다. 버프스위트 최신 무료 버전에서는 이 기능이 막혔다고 한다.

강의에서도 그렇고 여러 블로그에서도 그렇고, OWASP-ZAP이 공통적으로 언급되고 있다.

OWASP-ZAP의 Dirbuster(디렉토리 부스터?) 기능이 버프스위트의 Spider 기능을 대체할 수 있다고 한다.

그래서 강의를 따라가되 Spider 기능은 Dirbuster로 대체해보자.

그렇게 사용법을 익힌 후에는 다른 취약한 사이트를 대상으로 가이드 없이 직접 분석해볼 것이다.


https://www.zaproxy.org/download/

 

OWASP ZAP – Download

As with all software we strongly recommend that ZAP is only installed and used on operating systems and JREs that are fully patched and actively maintained.

www.zaproxy.org

쭉 설치했다.

 

 

프록시 포트 8080이 이미 사용되고 있다고 한다. 버프스위트 프로세스가 8080을 쓰고 있어서 그렇다.

그래서 버프스위트를 닫고 8080으로 실행했다.

 

 

세션을 유지할 건지 유지하지 않을 건지 묻는다.

여기서 말하는 세션이라는 게 뭔지 알아야만 했다. 너무 광의적인 단어라...

 

 

공식 홈페이지에 방문해보니 여기서 말하는 persist session은 내 컴퓨터에 저장이 가능한 현재 작업 상태? 과정? 을 뜻하는 것 같다. 저장과 불러오기 기능이 있는 것을 보니.. 가상머신에서 스냅샷을 찍는 것과 비슷한 개념으로 이해하기로 했다.

 

어쨌든 세션을 저장한다거나 불러오는 건 조금 더 규모가 크고 시간이 오래 소요되는 작업을 할 때나 이용하도록 하자.

 

이제 demo.testfire.net의 디렉토리와 파일 구조를 분석할 것인데, 사용법을 찾다보니 자신이 직접 구축한 사이트를 대상으로 하라는 권고가 있었다. 설마 demo.testfire.net를 분석하는 것도 문제가 될까? 나중에 여기로 취약점 분석도 자동 수행할 건데 괜히 불안하다.

 

https://brunch.co.kr/@8d1b089f514b4d5/33

 

합법적으로 ‘웹 크롤링’하는 방법 (上)

웹 크롤링의 의미와 문제점 | 합법적으로 '웹 크롤링'하는 방법 (上) 빅데이터 분석이 점차 강조됨에 따라 많은 기업과 학생들이 데이터 확보에 열을 올리고 있습니다. 하지만 기업 입장에서는

brunch.co.kr

괜한 걱정을 했다. 사이트마다 기준선이 있고 당연히 demo.testfire.net와 같은 사이트에 한해선 괜찮다. demo.testfire.net는 일부러 취약점을 두어 크롤링보다 더 공격적인 행위도 받는 학술 목적의 사이트다.

 

 

Automated Scan은 뭔지도 모르고 돌리는 것 같으니까 Manual Explore(수동 탐색)을 선택했다. 그래야 공부가 된다.

 

 

프록시를 올린 상태에서 탐색할 URL을 입력하고 Launch Browser

 

 

???

 

 

구글링

 

 

 

여기 Explore your application이 있는데 Firefox로 선택된 게 문제였다.

크롬으로 바꿔서 동작해보았다.

 

 

웹브라우저가 열리면서 GUI 기반 아이콘들이 양옆으로 도열했다.

OWASP-ZAP으로 돌아올 필요 없이 웹브라우저를 보는 상태에서도 다양한 기능을 수행할 수 있는 것이다.

 

 

하지만 나는 정석대로 프로그램에서 해당 사이트에 Spider를 돌리기로 했다.

잠깐 Spider?

그건 버프스위트에 있는 기능이고 여기선 Dirbuster가 아니었나?

아무튼 demo.testfire.net 도메인을 대상으로 Spider를 돌렸다.

 

 

버프스위트의 Site Map에서는 찾을 수 없었던 디렉토리와 파일들이 좌측에 나열되었다.

작업 Break는 상단에 익숙한 버튼이 있다.

 

그리고 이 Spider가 언제 완료되는 건지 몰라서 계속 기다리다가 나름의 포인트를 찾아냈다.

 

우측 하단에 있는 눈알 모양이다.

커서를 올려보면 Passive Scan Queue라는 설명이 나온다.

수동 스캔 대기줄이다. Spider를 돌리는 중에 저 눈알 모양의 숫자가 점점 줄어들다가 0에 이르면 더 이상 아무 변화가 생기지 않는다. 즉, Queue가 0이 되면 더는 작업할 게 없다는 뜻이라 해석할 수 있다.

 

좌측 트리창에서 도메인 아래에 admin이라는 디렉토리가 있음을 확인했다.

admin 디렉토리 아래에서는 clients.xls 파일을 확인했다.

물론, 오늘날 이렇게 중요한 디렉토리와 파일을 너무도 쉽게 노출시키는 사이트는 거의 없을 것이다.

 

URL에서 demo.testfire.net/admin을 입력해 들어갔더니 login.jsp로 이동되었다. (강의랑 다르다. 강의에서는 에러 페이지가 나타났다.)

더보기

 

직접 URL에 입력할 필요 없이 ZAP에서 이동할 수도 있다.

마찬가지로 demo.testfire.net/admin/clients.xls 로 접속해봤지만 또 login.jsp로 이동되었을 뿐, 액셀 파일은 다운로드할 수 없었다. /cgi.exe 파일도 받을 수 없는 건 똑같았다.

삽질을 할 예감이 든다.


ZAP으로 demo.testfire.net의 clients.xls나 cgi.exe를 얻는 한국어 게시글은 찾아볼 수 없었다.

이러면 그냥 사용법을 익혀버리고 직접 방법을 찾아야겠다.

 

반응형