오픈소스를 이용하여 취약점 점검을 진행하는 방법에 대해서 알아보겠습니다. 실무에서 자주 사용되는 취약점 점검 도구에는 매우 다양한것들이 있는데요. 오늘은 대표적인 몇가지에 대해서만 알아보겠습니다.
웹 취약점 점검 도구는 셀수없을 만큼 다양하게 나와 있습니다. 무료 오픈소스도 있고 유료로 돈을내고 사용해야하는 프로그램도 많습니다. 취약점 분석시 가장 중요한 포인트는 원하는 항목의 결과가 제대로 나오는지 그리고 정확도가 높은지등을 따져보고 선택하면됩니다.
1. Kali Linux
백트랙(BackTrack) 리눅스의 후신인 칼리(Kali) 리눅스는 매우 방대한 취약점 점검 및 해킹 관련 도구를 제공합니다. 아래에서 설명할 Nmap, Nikto, OWASP-ZAP을 모두 포함하고 있습니다. 칼리 리눅스에 대해서는 인터넷상에서 다양한 문서를 접할 수 있습니다. 윈도우 운영체제의 경우 VMware사의 vmplayer를 이용하면 쉽게 설치할 수 있다. VM으로 설치하는 경우 CPU 코어 2개 이상, 3GB 이상의 메모리를 권장합니다.
2. Nmap
Nmap(Network Mapper)은 공개용 네트워크 포트 스캐너로 대상 서버에서 운영 중인 네트워크 관련 서비스를 점검할 수 있다. 홈페이지 취약점 점검 시 가장 기본적으로 실행하는 도구이며 특히 포트 스캐너로 대중적으로 사용되고 있습니다. NSE 스크립트를 같이 사용하면 매우 강력한 취약점 점검 도구로 활용가능합니다.
3. Nikto
Nikto 오픈소스 도구는 웹 서버 스캐너로 기본적인 웹 서버 설정의 문제점, 취약한 파일 존재 여부, 서버 소프트웨어의 설치 시 취약점 존재 여부 등을 점검해주는 아주 단순하지만 매우 강력한 툴입니다.
4. OWASP-ZAP
OWASP에서 제공하는 Zed Attack Proxy(ZAP)은 통합 모의침투 도구이며 자동 웹 취약점 점검 도구를 제공합니다. 상용 웹 취약점 스캐너에 비해서 정확도는 일부 떨어지지만 빠른 속도와 상당한 수준의 성능으로 볼 때 상용스캐너를 버금가는 매우 성능이 좋은 취약점 점검 도구로 활용할 수있습니다. 그리고 ZAP은 취약점 점검도구 뿐만 아니라 프록시 기능등을 사용할수있어 수동점검시에도 매우 강력한 보조도구로 활용할 수 있는 장점이 있습니다.
5. Burp Suite
Burp Suite는 웹 침투 테스트에 사용되는 고급 Java 기반 도구입니다. 고급 기능과 기술이 제공되어 화제가 되었으며 웹 기반 애플리케이션에 대한 취약점 식별 및 공격 확인을 위해 보안 전문가들 사이에서 엄청난 인기를 얻었습니다.
Burp 제품군 은 웹 침투 테스트에 사용되는 Java 기반 통합 플랫폼입니다. PortSwigger Security에서 개발했으며 무료 버전과 라이센스 버전의 두 가지 버전으로 제공됩니다. Burp Suite의 다양한 도구와 기술은 함께 작동하며 초기 매핑에서 취약점 악용에 이르기까지 전체 테스트 프로세스를 지원합니다.
Burpsuite 취약점 스캐너 는 테스트 프로세스를 완벽하게 제어하고 수동 기술과 고급 자동 기술을 결합하여 훨씬 더 효과적이고 편리하게 만듭니다.
우리가 많이 알고있는 유료 점검툴 Acunetix도 있습니다. 이외에도 git hub 같은곳을 찾아보면 수많은 종류의 다양한 보안 취약점 분석 툴이 있습니다.