2010년 4월 18일 일요일

구글에서 배포한 웹 보안 스캐너 Skipfish 를 이용해 보자

웹 보안 스캐너 도구를 하나 소개해 보고자 한다. 워낙 많은 도구가 존재하지만, 그 중에서도
구글이 만들어 배포하는 Skipfish 를 소개한다. 다운로드 및 세부 정보는 아래의 사이트를
방문해 보자


Skipfish 의 가장 큰 특징은 C 로 만들어져 있어 초당 2000 개 이상의 요청이 가능하다.
HTTP 핸들링에 있어 최적화 되어 있고, CPU 사용을 최소화한다. 사용이 쉽게 설계했다는
것도 Skipfish 가 자랑하는 점이며, 적은 오탐률과 뛰어난 기능을 자랑한다고 한다.

이 도구가 지원하는 스캐너 기능으로는 상,중,하의 위험도로 구분된 패턴과 내부 경고
메시지와 정보성의 메시지 정도로 구분된다. 상 위험도라 하면 서버 측면의
SQL 인젝션, 명령어 인젝션, 포맷 스트링 취약점 등이 있다.

참고로 업데이트 속도가 빠르다는 것도 장점이다. 이 도구를 소개하기 위해 접한게
1.09b 버전이었는데, 지금은 벌써 1.31 베타 버전이다. 설치는 어렵지 않게 진행할 수 있으며,
리눅스의 경우라면 컴파일 하기 위해 필요한 약간의 라이브러리 사전설치와 make 를
해 주기만 하면 된다. 필자의 경우는 libidn 이 없어 이것만 설치하고 쉽게 사용이 가능하였다.

# apt-get install libidn11-dev

# make
cc skipfish.c -o skipfish -Wall -funsigned-char -g -ggdb -D_FORTIFY_SOURCE=0 -I/usr/local/include/ -I/opt/local/include/ -O3 -Wno-format http_client.c database.c crawler.c analysis.c report.c -lcrypto -lssl -lidn -lz -L/usr/local/lib/ -L/opt/local/lib

NOTE: See dictionaries/README-FIRST to pick a dictionary for the tool.

컴파일 후, 실행을 시켜보면 아래와 같이 간단하다.
# ./skipfish
skipfish version 1.09b by <lcamtuf@google.com>
[-] PROGRAM ABORT : Scan target not specified (try -h for help).
    Stop location : main(), skipfish.c:379

특정 사이트를 대상으로 한번 실행해 보면 다음과 같은 이미지 결과를 볼 수 있다.

 
자, 그리고 skipfish 가 수행한 결과는 웹 페이지 형태로 깔끔하게 볼 수 있는데, 다양한 결과를 보여주고 있다.


웹 사이트를 초기 구축하였거나 운영중인 사이트가 있다면 Skipfish 를 통해 웹 사이트 점검을 해 보는 것은
어떨까 한다. 분명 많은 도움을 받을 수 있지 않을까 생각한다. 최소한 아무런 보안 점검 없이,
이러한 점검은 분명 사이트 안전에 큰 도움이 된다.


댓글 없음:

댓글 쓰기