Open Source/Kali Linux

[Web Vulnerability Scanners] W3AF On Kail Linux - (3. 커맨드 플러그인)

DarkSoul.Story 2013. 8. 22. 11:33
반응형

이제 부터 W3AF의 각 플러그인의 쓰임새에 대해 알아보자.

  

① output 플러그인

output 플러그인은 스캔 결과를 저장하기 위해 사용하는 플러그인으로, 저장 포맷은 xml / text / csv 등을 지원한다. 



참고로, 스캔 결과에 대해 자세한 리포트를 원할 경우 verbose 파라메터 값을 Ture로 설정해준다. [set verbose Ture]


② grep 플러그인

grep 플러그인은 대상 웹 어플리케이션에 대해 모든 요청과 응답을 분석하여, 에러(Errors) 쿠키(Cookies) 이메일(E-mail) 설명(comments)등의 유용한 정보를 찾을때 사용한다.



③ bruteforce 플러그인

bruteforce 플러그인은 기본적인 HTTP 로그인 / 로그인 폼을 대상으로 무차별 대입 공격 (BruteForce Attack)을 진행한다. 



무차별 대입에 사용되는 패스워드 파일과 유저(ID) 파일은 core/controllers/bruteforce에 각 password.txt / user.txt로 존재한다. 패스워드 파일과 유저 파일을 살펴보면, 각 265개 / 17개의 문자를 저장하고 있다. 사용자가 해당 파일에 문자열을 추가하거나 별도의 패스워드파일과 유저파일을 가지고 있다면, [config] 명령어를 사용하여 패스워드파일과 유저파일의 경로를 별도로 지정해 주면된다.



④ audit 플러그인

audit 플러그인은 discovery 플러그인에 의해 생성 된 내용을 활용하여, 대상이되는 웹 서버와  어플리케이션의 취약점을 찾아 낼때 사용하는 플러그인 이다. 흔히 알고 있는 크로스사이트스크립트(XSS), SQL Injection, 파일업로드(FileUpload)공격, 버퍼오버플로우(Buff Over Flow)등이 이곳에 포함된다. 



⑤ infrastructure 플러그인

infrastructure 플러그인은 원격 운영 체제, HTTP 데몬, 웹 어플리케이션 방화벽(WAF), 대상 웹 어플리케이션과 관련된 기타 정보를 식별, 과거에 대상 웹 사이트가 웹 해킹으로 인하여 변조가 되었는지 zone_h의 데이터 베이스를 검색하는 플러그인이다. infrastructure  플러그인에 포함되어 있는 하위 플러그인들을 살펴보면 Fingerprint에 사용하는 플러그인이 대다수라는것을 확인할 수 있다. 



infrastructure 플러그인에서 얻은 정보들은 audit 플러그인에 사용될 수도 있다. 각각의 하위 플러그인들은 서로 다른 기능을 가지며, 사용자는 단일 플러그인 또는 동시에 많은 플러그인들을 사용할 수 있다.


⑥ evasion 플러그인

evasion 플러그인은 IPS (Intrusion Prevention System:침입 차단 시스템)의 탐지를 우회하기 위해 요청을 변경할 때 사용하는 플러그인이다. 예를들어 탐지를 피하기 위해 Hex 포맷으로 URL을 무작위로 인코딩을 하기위해 rndHecEncode 플러그인을 사용할 수 있다.



⑦ mangle 플러그인

mangle 플러그인은 사용자가 필요로 할때 요청과 응답을 조작하기 위해 사용하는 플러그인이다. mangle 플러그인에는 요청과 응답을 수정하기 위해 사용하는 sed (Stream Editor)라는 비 대화모드(Non-Interactive) 라인 단위 편집기만을 플러그인으로 존재한다.



⑧ crawl 플러그인

crawl 플러그인은 크롤링, URL Fuzzer등을 이용하여 사용자가 알고 있는 URL 이외에 더많은 URL을 찾는데 도움을 주거나, 대상 서버 또는 WAS서버가 피싱 사기에 사용되는인지 확인하기 위해 phishtank.com의 데이터베이스를 검색 하는 등에 사용하는 플러그인이다. 



crawl 플러그인과 위에서 언급한 infrastructure 플러그인은 W3AF v1.5 이하에서 discovery 플러그인의 하위 플러그인들이 분리가 되어 각각 플러그인으로 자리 잡았다.


⑨ auth 플러그인

저자는 auth 플러그인이 W3AF에서 가장 중요한 플러그인이라고 생각한다. 대상 URL을 크롤링(Crawling) 및 취약점 스캔을 하는 동안 로그인을 해야만 접근 가능한, 웹 어플리케이션을 검색 할 수 있다. W3AF가 로그인 폼을 만나게 되면 추가적인 정보를 탐지하기 위해 자동으로 로그인을 해야할 필요가 생기는데, 이때 사용되는 플러그인이 auth 플러그인이다. 사전에 미리 auth 플러그인을 사용하여 자세한 로그인 정보를 설정해 두면, W3AF가 로그인 폼을 만나면 자동으로 설정된 내용을 토대로 로그인을 시도한다.



성공적인 로그인을 하기위해 가능한 사용하려는 플러그인의 값을 모두 설정하는 것이 좋다. 


플러그인 설정이 완료되면, 메인 메뉴로 돌아와 [start]를 입력하면, 아래와 같이 스캔을 시작한다.



취약점 스캔이 종료되면, output 플러그인에서 설정한 내용을 토대로 w3af 폴더에 저장된다. 



반응형