cyberbugscybersecure/Basic-Web-Vulnerability-Scanner
GitHub: cyberbugscybersecure/Basic-Web-Vulnerability-Scanner
一款轻量级 Python 命令行 Web 漏洞扫描器,用于检测网站常见安全配置缺陷与敏感文件暴露问题。
Stars: 0 | Forks: 0
# WebSentry - 基础 Web 漏洞扫描器
**作者:Krishna Bodhe**
一个简单的 Python 命令行工具,用于扫描目标网站是否存在常见的安全配置缺陷——缺失安全标头、脆弱的 Cookie 标志、服务器 Banner 泄漏、危险标头、过时的 TLS 版本以及一些基础的暴露文件漏洞。结果将直接在终端中以彩色显示:**绿色 = 安全**,**红色 = 风险**。
## 功能
| # | 模块 | 检查内容 |
|---|--------|-----------------|
| 1 | 安全标头扫描 | HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy |
| 2 | Cookie 属性扫描 | 每个 Cookie 的 HttpOnly, Secure, SameSite 标志 |
| 3 | Banner 抓取 | Server, X-Powered-By 及其他技术信息披露标头 |
| 4 | 危险标头扫描 | 信息泄漏标头 + 通配符 CORS (`Access-Control-Allow-Origin: *`) |
| 5 | TLS / SSL 版本扫描 | 将 TLS 1.0 / 1.1 / SSLv3 标记为不安全,TLS 1.2 / 1.3 标记为安全 |
| 6 | 基础漏洞检查 | 暴露的 `.git`、`.env`、备份文件、管理后台、HTTP 与 HTTPS 对比 |
## 环境要求
- Python 3.7 或更高版本
- pip
使用的 Python 库:
- `requests`
- `colorama`
- `urllib3`
## 安装说明
步骤 1:下载 / 复制项目文件(`websentry.py`、`requirements.txt`)到一个文件夹中。
步骤 2:在该文件夹中打开终端 / 命令提示符。
步骤 3:安装所需的库:
```
pip install -r requirements.txt
```
(或者逐一安装它们)
```
pip install requests colorama urllib3
```
## 使用说明
通过提供目标 URL 来运行扫描器:
```
python websentry.py https://example.com
```
你也可以在不加 `https://` 的情况下运行它——该工具会自动添加:
```
python websentry.py example.com
```
## 输出示例(样本)
```
====================================================================
WebSentry - Basic Web Vulnerability Scanner
Created by: Krishna Bodhe
====================================================================
[*] Target: https://example.com
--- 1. Security Headers Scan ---
[+] Strict-Transport-Security: Present
[-] Content-Security-Policy: Missing -> Risk: Restricts sources, mitigates XSS
--- 2. Cookie Attribute Scan ---
Cookie -> session_id
[+] HttpOnly flag set
[-] Secure flag missing -> can be sent over plain HTTP
--- 3. Banner Grabbing (Server / Tech Disclosure) ---
[-] Server: Apache/2.4.41 -> reveals server/technology info
--- 4. Dangerous / Risky Headers Scan ---
[-] Server: Apache/2.4.41 -> Discloses web-server software & version
--- 5. TLS / SSL Version Scan ---
[+] Negotiated protocol: TLSv1.3 (Secure)
--- 6. Basic Vulnerability Checks ---
[+] /.git/config -> Not accessible (HTTP 404)
[-] /.env -> Accessible (HTTP 200) : Exposed environment file (secrets risk)
--- Scan Complete ---
[*] WebSentry finished scanning https://example.com
[*] Tool by Krishna Bodhe
```
## 项目流程
```
Start
|
v
Input target URL
|
v
Send HTTP/HTTPS request
|
v
Run 6 scan modules
(headers, cookies, banner,
dangerous headers, TLS, basic vulns)
|
v
Print color-coded results
(green = safe, red = risk)
|
v
End - Scan complete
```
## 项目结构
```
project-folder/
|-- websentry.py -> main scanner script
|-- requirements.txt -> required Python libraries
|-- README.md -> this file
```
## 免责声明
本工具仅供**教育目的**使用。仅扫描您拥有或获得明确书面测试许可的网站。未经授权扫描系统在您所在的国家/地区可能是违法的。
## 作者
**Krishna Bodhe**
## 作者
**Krishna Bodhe**标签:Python, TLS/SSL, Web安全, 加密, 安全配置审计, 实时处理, 密码管理, 插件系统, 无后门, 漏洞扫描器, 蓝队分析, 逆向工具