Phanendra-Addala/web-vulnerability-scanner
GitHub: Phanendra-Addala/web-vulnerability-scanner
基于Python的轻量级Web漏洞扫描器,用于检测开放端口、缺失安全标头、SQL注入和XSS漏洞,适合网络安全入门学习与靶场练习。
Stars: 0 | Forks: 0
WEB 漏洞扫描器 – README
1. 项目概述
本项目是一个**基于 Python 的 Web 漏洞扫描器**,旨在识别 Web 应用程序中的常见安全问题。
该扫描器执行多项安全检查,包括**端口扫描、安全标头分析、SQL 注入测试和跨站脚本攻击 (XSS) 测试**。
该工具仅用于**教育目的和网络安全学习**。它演示了如何使用 Python 自动化基本的渗透测试技术。
2. 功能
扫描器目前执行以下安全检查:
• **端口扫描**
扫描目标主机上的常用网络端口以识别开放服务。
• **安全标头分析**
检查是否存在重要的 HTTP 安全标头,例如:
* X-Frame-Options
* X-XSS-Protection
* Content-Security-Policy
* Strict-Transport-Security
缺失的标头可能表明存在潜在的安全弱点。
• **SQL 注入检测**
通过注入基本的 SQL payload 并分析服务器响应中的数据库错误消息,测试 URL 参数是否存在可能的 SQL 注入漏洞。
• **跨站脚本攻击 (XSS) 检测**
识别网页上的表单,并尝试注入脚本 payload 以检测反射型 XSS 漏洞。
• **自动报告生成**
扫描完成后,包含已检测到漏洞的报告将保存在名为 **report.txt** 的文件中。
3. 环境要求
本项目需要以下软件:
Python 版本
Python 3.7 或更高版本
Python 库
* requests
* beautifulsoup4
使用 pip 安装所需的库:
pip install requests beautifulsoup4
4. 如何运行扫描器
步骤 1:将代码保存为 Python 文件
示例:
scanner.py
步骤 2:打开终端或命令提示符,导航至项目目录。
步骤 3:使用以下命令运行程序:
python scanner.py
步骤 4:在提示时输入目标 URL。
输入示例:
http://testphp.vulnweb.com/listproducts.php?cat=1
注意:SQL 注入测试需要包含参数(例如 `?id=1` 或 `?cat=1`)的 URL。
5. 输出
在执行过程中,扫描器将显示:
• 检测到的开放端口
• 缺失的安全标头
• SQL 注入测试结果
• XSS 测试结果
扫描结束后,将生成一个名为 **report.txt** 的文件,其中包含发现的漏洞摘要。
报告内容示例:
# WEB 漏洞扫描报告
检测到开放端口:80
缺失的安全标头:Content-Security-Policy
检测到 XSS 漏洞
6. 安全测试目标
切勿在未经许可的情况下扫描网站。
请使用故意设计为有漏洞的应用程序,例如:
• http://testphp.vulnweb.com
• OWASP Juice Shop
• DVWA (Damn Vulnerable Web Application)
这些环境专为安全测试和学习而设计。
7. 局限性
此扫描器是一个**基础的教育工具**,不能替代专业的安全扫描器。
局限性包括:
• payload 测试有限
• 基础的漏洞检测逻辑
• 不对多个页面进行爬取
• 无身份验证处理
• 有限的端口扫描范围
8. 未来改进
可能的改进包括:
• 网站爬取以扫描多个页面
• 多线程端口扫描以提高性能
• 目录和文件暴力破解扫描
• 子域名发现
• 高级 SQL 注入 payload
• 改进的 XSS 检测技术
• HTML 漏洞报告
• 命令行参数支持
9. 免责声明
本项目**仅用于教育和符合道德规范的网络安全学习目的**。
切勿在未经所有者明确许可的情况下使用此工具扫描系统或网站。
未经授权的扫描可能违反法律法规。
10. 作者
网络安全学习项目
使用 Python 开发,用于练习基本的 Web 安全测试技术。
标签:BeautifulSoup, CISA项目, DNS枚举, DOE合作, HTTP安全, Python安全开发, Requests库, Splunk, SQL注入检测, Web漏洞扫描器, 安全头分析, 安全教育, 密码管理, 对称加密, 数据统计, 端口扫描, 网络安全实验, 网络安全工具, 自动化审计, 逆向工具