erkinkasim/owasp-sql-injection-detection-lab

GitHub: erkinkasim/owasp-sql-injection-detection-lab

基于Python的SQL注入检测实验环境,通过分析Apache日志识别DVWA靶场中的SQL注入攻击并生成JSON告警。

Stars: 0 | Forks: 0

# OWASP SQL 注入检测实验室 该项目是一个基于 Python 的安全实验室,通过分析 Apache 访问日志来检测在 DVWA (Damn Vulnerable Web Application) 环境中发生的 **SQL 注入攻击**。 其目的是演示如何通过 **日志分析** 来检测针对 Web 应用程序的攻击,并构建基础的攻击检测机制。 # 项目特性 - 实时分析 Apache 访问日志 - 检测 SQL 注入攻击模式 - 为检测到的攻击生成 **JSON 格式的告警** - 将告警保存到 **alerts.json** 文件中 - 程序终止时生成 **attack summary(攻击摘要)** # 使用的技术 - Python - Docker - DVWA (Damn Vulnerable Web Application) - Apache 日志分析 # 实验环境设置 启动 DVWA 容器: ``` docker run -d -p 8080:80 --name dvwa vulnerables/web-dvwa Tarayıcıdan erişim: http://localhost:8080 Login bilgileri: username: admin password: password Security Level: LOW SQL Injection Testi DVWA içindeki SQL Injection modülünde aşağıdaki payload kullanılabilir: 1' OR '1'='1 Bu saldırı Apache access loglarına şu şekilde yansır: GET /vulnerabilities/sqli/?id=1%27+OR+%271%27%3D%271 HTTP/1.1 Detection Scripti Çalıştırma Apache loglarını Python scriptine pipe ederek gerçek zamanlı analiz yapılabilir: docker exec -i dvwa tail -f /var/log/apache2/access.log | python3 detector.py Örnek Alert Saldırı tespit edildiğinde aşağıdaki gibi bir alert üretilir: { "timestamp": "2026-03-07T21:00:27", "source_ip": "172.17.0.1", "attack_type": "SQL Injection", "severity": "high" } Alerltler ayrıca: alerts.json dosyasına kaydedilir. Attack Summary Program sonlandırıldığında saldırı istatistikleri gösterilir: SQL Injection: 11 Amaç Bu proje, aşağıdaki konuları göstermek amacıyla hazırlanmıştır: Web saldırılarının log analizi ile tespiti Basit bir saldırı detection mekanizması geliştirmek Python ile security monitoring scripti yazmak KAYNAK: OWASP Top 10 https://owasp.org/www-project-top-ten/ ```
标签:Apache日志分析, AppImage, CISA项目, Docker, DOE合作, DVWA, Python, SQL注入检测, WAF, Web安全, Web应用防火墙, 安全实验室, 安全教育, 安全测试, 安全防御评估, 攻击告警, 攻击性安全, 无后门, 漏洞靶场, 网络安全, 蓝队分析, 请求拦截, 逆向工具, 防御检测, 隐私保护