ndrmeda-s/Avulscan

GitHub: ndrmeda-s/Avulscan

基于 FastAPI 和 Docker 构建的模块化全栈漏洞扫描器,面向授权资产提供端口扫描、HTTP 安全标头分析和 PDF 审计报告生成。

Stars: 0 | Forks: 0

自动化漏洞扫描器

Vulnerability Scanner Banner 使用 **FastAPI** 和 **Docker** 构建的模块化全栈安全评估工具。 [![Python](https://img.shields.io/badge/python-3.10+-3776AB?style=flat-square&logo=python&logoColor=white)](https://www.python.org/) [![FastAPI](https://img.shields.io/badge/fastapi-009688?style=flat-square&logo=fastapi&logoColor=white)](https://fastapi.tiangolo.com/) [![Docker](https://img.shields.io/badge/docker-2496ED?style=flat-square&logo=docker&logoColor=white)](https://www.docker.com/) [![Vercel](https://img.shields.io/badge/vercel-000000?style=flat-square&logo=vercel&logoColor=white)](https://vercel.com/)
# 描述 **Avulscan** 是一款全栈安全评估工具,专为在预先授权的资产上进行教育用途而设计。它利用 **FastAPI** 和 **Docker**,模块化地扫描开放端口,评估 HTTP 安全标头,并输出 PDF 审计报告。兼容桌面和 Termux 环境。 # 核心功能 * **网络端口扫描:** 实时检查核心网络基础架构端口(`21`、`22`、`80`、`443`)。 * **HTTP 安全标头分析:** 实时检查关键防御标头(`HSTS`、`CSP`、`X-Frame-Options`、`X-Content-Type-Options`)。 * **隐蔽与绕过引擎:** 配备未验证的 SSL Context 以防止证书崩溃,并使用自定义的真实浏览器 User-Agent 绕过具有限制性的 Web Application Firewalls (WAF)。 * **企业级 PDF 报告生成器:** 自动将原始安全指标汇编成正式的审计 PDF 文档,包含动态绘制的矢量进度条和全面的资讯学定义。 * **严格的白名单安全机制:** 内置网络防护机制,将扫描严格限制在经过验证的测试实验室(`scanme.nmap.org`、`github.com` 和 `sayuran.vip`),以符合法律框架。 # 技术栈 ### 后端(API 引擎) * **Python 3.13** - 核心应用逻辑 * **FastAPI** - 用于构建 API 的现代高性能 Web 框架 * **Uvicorn** - 极速的 ASGI 服务器实现 * **FPDF2** - 具备矢量形状操作功能的高级 PDF 生成库 ### 前端(用户仪表板) * **HTML5 & Vanilla JavaScript** - 异步 API 获取和动态 DOM 注入 * **Tailwind CSS (via CDN)** - 现代、utility-first 的实用类框架,用于实现响应式深色模式样式 ## 项目架构 ``` avulscan/ ├── backend/ │ ├── app.py # Main FastAPI Gateway & Whitelist Security │ ├── requirements.txt # Backend Python dependencies │ └── core/ │ ├── scanner.py # TCP Socket connection scanner │ ├── header_scan.py # Stealth HTTP header analyzer │ └── reporter.py # Vector PDF report generator engine └── frontend/ ├── index.html # Dark-mode dashboard UI └── js/ └── app.js # Fetch API integration handler ``` # 如何在本地设置和运行 前置条件(适用于 Termux/Android 用户) 确保你拥有必要的编译器来构建基于 rust 的现代 Python wheels: ``` pkg update && pkg upgrade -y pkg install clang make rust python -y export ANDROID_API_LEVEL=24 ``` ## 1. 后端部署 导航到 backend 目录,安装依赖项,并启动 Uvicorn 服务器: ``` cd backend pip install -r requirements.txt uvicorn app:app --host 0.0.0.0 --port 8080 --reload ``` API 引擎将待命于 http://localhost:8080。 ## ​2. 前端部署 在 Termux 中打开一个新会话,导航到 frontend 目录,并运行一个轻量级的本地 HTTP 服务器: ``` cd frontend python -m http.server 8000 ``` 打开浏览器并在以下地址访问交互式仪表板:http://localhost:8000。 ## 许可证与使用条款 本项目采用双重许可模式: **1. 前端 - MIT 许可证** `frontend/` 下的代码采用 MIT 许可。请参阅 `frontend/LICENSE`。 **2. 后端 - Apache License 2.0 + 道德使用条款** `backend/` 下的代码采用 Apache 2.0 许可。请参阅 `backend/LICENSE`。 **使用本软件的任何部分,即表示您同意以下具有约束力的条款:** 1. **仅限授权使用**:本工具仅供教育目的和授权的安全测试使用。您只能扫描您拥有或获得明确书面测试许可的系统。 2. **禁止非法活动**:未经授权的网络扫描可能会违反印度尼西亚的 UU ITE 等法律。任何非法使用将立即终止您对本软件的许可。 3. **强制执行白名单**:后端内置了硬编码的白名单:`scanme.nmap.org`、`github.com`、`avulscan.vercel.app`、`sayuran.vip`。严禁尝试绕过它。 4. **无保证与责任**:本软件按“原样”提供。对于因滥用造成的损害或法律后果,开发者不承担任何责任。 违反这些条款即构成侵犯版权。
标签:AV绕过, Docker, FastAPI, 反取证, 安全评估, 安全防御评估, 实时处理, 插件系统, 数据统计, 端口扫描, 网络调试, 自动化, 请求拦截, 逆向工具