웹 보안 이론 5
OWASP ZAP 도구
개념
- 무료 오픈소스 침투 테스트 도구로, 웹 애플리케이션의 보안 취약점을 찾는 데 사용.
- 사용하기 쉬운 인터페이스를 제공하며, 웹 애플리케이션 보안 테스트를 위한 강력한 기능 지원.
- 오픈소스 커뮤니티의 활발한 기여로 지속적인 업데이트와 발전.
- 프록시 기반 도구로 클라이언트와 서버 사이의 트래픽을 가로채 분석.
- 다양한 모드 제공:
- 표준 모드, 공격 모드, 보호 모드 등.
주요 기능
기본 기능
- 프록시
- 웹 트래픽을 가로채고 수정하여 취약점 분석.
- 스캐너
- 자동화된 스캔으로 다양한 웹 취약점 식별.
- SQL Injection, XSS, CSRF, 파일 업로드 등의 취약점 탐지.
- 브루트 포스
- 로그인 페이지 등에 대해 무차별 대입 공격 수행.
- 퍼저(Fuzzer)
- 예상치 못한 입력을 전송해 애플리케이션 오류 유발.
- 스파이더(Spider)
- 웹 애플리케이션의 모든 링크와 페이지를 크롤링하여 구조를 파악.
고급 기능
- AJAX 스파이더
- AJAX를 사용하는 웹 애플리케이션에 대한 분석 지원.
- API 스캐닝
- REST API의 취약점 분석 가능.
- 스크립팅
- Python, JavaScript 등을 이용한 기능 확장.
- 플러그인
- 다양한 플러그인을 통해 기능 확장 가능.
스캔 종류
1. 액티브 스캐닝
- 특징: 실제 공격을 시뮬레이션하여 취약점 탐지.
- 장점:
- 높은 정확도.
- 다양한 취약점 탐지 가능.
- 단점:
- 시간 소요.
- 시스템 부하 발생 가능.
- 오탐 가능성.
2. 패시브 스캐닝
- 특징: 웹 브라우저와 서버 간 트래픽을 분석해 취약점 식별.
- 장점:
- 빠른 속도.
- 부하 발생 없음.
- 단점:
- 낮은 정확도.
- 제한적인 탐지 범위 (주로 HTTP 헤더, 쿠키, HTML 코드 분석).
3. 비교
기능 | 액티브 스캐닝 | 패시브 스캐닝 |
---|---|---|
작동방식 | 웹 애플리케이션에 공격 시도 | 웹 트래픽 분석 |
속도 | 느림 | 빠름 |
정확도 | 높음 | 낮음 |
안전성 | 낮음 | 높음 |
탐지 범위 | 넓음 | 제한적 |
부하 | 높음 | 낮음 |
모드
- Safe Mode
- 트래픽 가로채기와 분석만 수행하며, 능동적 스캐닝은 하지 않음.
- 웹사이트에 미치는 영향이 가장 적음.
- Protected Mode
- 특정 범위 내에서만 능동적 스캐닝 수행.
- 범위 밖의 웹사이트는 Safe Mode와 동일하게 처리.
- Standard Mode
- 모든 기능을 제한 없이 사용 가능.
- 능동적 스캐닝, 공격 테스트, 퍼징 가능.
- Attack Mode
- 범위 내에서 새로운 노드 발견 시 자동으로 능동적 스캐닝 수행.
- 가장 공격적인 모드.
Nikto 도구
개념
- 웹 서버의 취약점을 스캔하는 오픈소스 도구.
- 오래된 소프트웨어 버전, 설정 오류, 알려진 취약점 등을 검사.
- 수천 가지 테스트를 수행하여 웹 서버의 보안 상태 점검.
- 소프트웨어 버전을 기반으로 알려진 취약점을 탐지하고, 위험한 파일이나 설정 오류를 식별.
주요 기능
- 광범위한 취약점 검사
- 다양한 테스트를 통해 웹 서버의 보안 상태 확인.
- 빠른 스캔 속도
- 효율적인 취약점 스캔 수행.
- 다양한 플러그인 지원
- 사용자 정의 플러그인을 통해 기능 확장 가능 (GitHub에서 제공).
- 다양한 보고서 형식
- 스캔 결과를 다양한 형식으로 출력 가능.
- Stealthy 스캔
- IDS(침입 탐지 시스템)를 우회하기 위한 기술 제공.