관리 메뉴

ARTIFEX ;)

# OWASP ZAP Attack Proxy 사용방법 본문

# Security/Penetration Testing

# OWASP ZAP Attack Proxy 사용방법

Artifex_Ethan_ 2020. 4. 27. 15:55
반응형

ZAP(Zed Attack Proxy)

ZAP는 웹서버를 사전조사할 때 쓰는 포트스캐너와 애플리케이션에 빠르게 입력 값을 보낼 수 있는 퍼징툴, 그리고 웹 서버에서 공통으로 쓰는 이름의 디렉토리를 추정하는 디렉토리 무작위 공격 툴을 가지고 있다.

웹 스캐너(Burp Suite, ZAP 등과 같은)가 인식하는 웹 애플리케이션의 취약점은 보통 다음의 세 가지 유형이다.

- SQL이나 OS 명령을 Injection하는 등의 서버를 목표로 하는 입력 기반 취약점

- 크로스 사이트 스크립트(XSS)와 같은 클라이언트 측을 목표로 하는 입력 기반 취약점

- 브라우저와 웹 애플리케이션 중간에서 쿠키나 비밀번호를 암호화하지 않고 전송하는 등의 요청과 응답 주기를 조사해서 식별할 수 있는 취약점

 

Kali에 기본적으로 설치가 되어 있는 툴이다.

Kali Linux -> Web Application -> Web Application Fuzzers -> owasp-zap 을 실행시키면 된다.

ZAP가 정상적으로 진행되려면 SSL 인증서가 필수적으로 준비되어야 한다.

Options - Dynamic SSL Certificates에서 <Generate>를 클릭하면 인증서를 만들 수 있다.

해당 사이트에서 애플리케이션, 서버에 대한 스캔정보, Sprider, Brute force, PortScan 등등을 진행할 수 있다.

먼저 Spider 기능을 통해 해당 사이트를 스캔해보자.

IP/URL에 우클릭해서 Attack - Spider 를 클릭하면 사이트에 대한 스캔이 진행된다.

스캔이 진행되면 아래 이미지와 같은 결과 뷰를 확인할 수 있다.

미리 설치가 되어 있는 DVWA 페이지를 대상으로 지정하여 스캔하였다.

Spider를 마치면 Active Scan 탭을 선택하여 웹에대한 실질적인 스캐닝을 진행할 수 있다.

아래 이미지를 보면 Active Scan 탭의 정보를 확인할 수 있다.

스캐닝을 마치면 Alert 탭에서 발견된 취약점들이 Tree 형태로 출력되는 것을 확인할 수 있다.

출력된 취약점 리스트를 가지고 검토를 진행하면 된다.

ZAP를 통해 페이지의 발견한 취약점에 대해 간단하게 설명을 하고 Parameter 값을 확인할 수 있다.

URL과 취약한 파라미터를 알았으므로 악의적인 공격이 가능하다.

브라우저의 실질적인 HTML 폼 필드에서 악성 입력값을 타이핑할 수도 있고, 혹은 프록시에서 요청문을 가로챈 후 파라미터 값을 수정해서 전송할 수도 있다.

 

ZAP으로 스캐닝하여 찾은 전체 보고서는 Reports 메뉴에서 HTML이나 XMP로 내보낼 수 있다.

HTML로 보고서 파일을 저장할 경우 추후 브라우저로 열어보고 검토할 수 있다.

 

ZAP는 스캐닝을 진행하는 동시에 Brute force 무작위 대입 공격을 진행할 수 있다.

이를 활용하면 디렉토리 목록이 사전에 입력되어 있어서 단순히 존재하는지 확인하게 된다.

이 디렉토리는 온라인에서 가장 일반적인 디렉토리를 중요한 순서대로 목록화한 것이다.

무작위 공격은 오랜 시간이 걸리는데, 특히 단어 목록이 크면 클수록 걸리는 시간은 늘어나게 된다.

도구 목록에서 Forced Browse 메뉴를 클릭한 후 사용할 수 있다.

반응형