
웹 애플리케이션 침투 테스트 실습 — 취약한 Flask 앱, 자동화 스캐너, 전문 침투 테스트 보고서. OWASP Top 10, SQLi, XSS, 명령어 주입, 파일 업로드 등을 다룹니다.
구조화된 결과를 audit_results.json에 출력합니다.
reports/PENETRATION_TESTING_REPORT.html 열기 → "Print / Export to PDF" 클릭reports/PENETRATION_TESTING_REPORT.md 열기| 작업 | 대상 구성 요소 | 발견 사항 | CVSS v3.1 |
|---|---|---|---|
| 정찰 | 헤더, /robots.txt | 서버 배너 및 민감한 경로 노출 | 5.3 |
| 디렉터리 열거 | /backup, /admin, /api/v1/users | 노출된 백업 디렉터리 및 인증되지 않은 API | 7.5–8.6 |
| 인증 테스트 | POST /login | SQLi 인증 우회 (admin' --) 및 속도 제한 없음 | 9.8 Critical |
| SQL 인젝션 | /products?category= | UNION SQLi 및 오류 기반 자격 증명 추출 | 9.8 Critical |
| 크로스 사이트 스크립팅 | /search, /feedback | 반사형 XSS 및 저장형 XSS | 7.2–7.5 |
| 파일 업로드 테스트 | POST /upload_avatar | 무제한 업로드 — MIME/확장자 검증 없음 | 8.8 High |
| 명령어 인젝션 | POST /network_tools | 정제되지 않은 ping을 통한 원격 OS 명령 실행 | 9.8 Critical |
| 보고 | reports/ | 전문 침투 테스트 보고서 (Markdown 및 HTML/PDF) | ✅ |
내비게이션 배너에서 **"Switch to Remediated Mode"**를 클릭하거나 /toggle_mode를 방문하세요.
| 취약점 | 적용된 패치 |
|---|---|
| 명령어 인젝션 | shell=False + 엄격한 IP 검증 |
| SQL 인젝션 | 매개변수화된 준비된 문 |
| XSS | HTML 자동 이스케이프 + Content-Security-Policy |
| 파일 업로드 | 확장자 화이트리스트 + UUID 무작위 파일명 |
| 접근 제어 결함 | 역할 기반 세션 인가 (RBAC) |
Kali Linux · Burp Suite · Nmap · Gobuster · SQLMap · Python · Flask · SQLite
OWASP Top 10 (2021) · NIST SP 800-115 · PTES · CVSS v3.1 · CWE