frangelbarrera/Network-Scanner

GitHub: frangelbarrera/Network-Scanner

一个将传统渗透测试工具与 AI 智能分析相结合的开源网络安全扫描平台,提供自动化侦察、漏洞评估和专业报告生成功能。

Stars: 16 | Forks: 0

# 网络 Scanner **AI 辅助的漏洞评估与渗透测试工具** Network Scanner 是一个开源安全扫描平台,它将传统的渗透测试工具与人工智能相结合,以提供全面的漏洞评估。该工具专为初学者、研究人员和安全专业人士设计,提供自动化侦察、智能分析和详细报告功能。 [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/) [![React](https://img.shields.io/badge/React-18+-61DAFB.svg)](https://reactjs.org/) ## 功能 | 类别 | 功能 | |----------|----------| | **侦察** | 子域名查找、WHOIS 查询、端口扫描、DNS 枚举 | | **AI 助手** | 解读扫描结果、建议后续步骤、解释发现 | | **自动化** | 通过 CLI 或 Web 界面进行自动化全面扫描 | | **报告** | 生成专业的 PDF 和 HTML 报告 | | **多用户** | 支持团队协作,提供项目管理和审计日志 | | **学习模式** | 为学生和初学者提供教育性解释 | | **API 就绪** | 提供用于集成和自动化的 RESTful API | | **安全性** | 速率限制、身份验证和安全配置 | ## 快速开始 ### 前置条件 - Python 3.8+ 和 pip - Node.js 16+ 和 npm - nmap、dnsutils、whois(自动安装) ### 安装说明 ``` # Clone the repository git clone https://github.com/frangelbarrera/Network-Scanner.git cd Network-Scanner # 运行 installation script (Ubuntu/Debian) chmod +x scripts/install.sh ./scripts/install.sh # 或者手动安装: # Backend 设置 cd backend python3 -m venv venv source venv/bin/activate pip install -r requirements.txt # Frontend 设置 cd ../frontend npm install # CLI 设置 cd ../cli pip3 install -r requirements.txt chmod +x network_scanner_cli.py ``` ### 配置 ``` # 复制并编辑 environment file cp .env.example .env # 使用你的设置编辑 .env (API keys, database config, 等) ``` ### 运行 Network Scanner **启动后端 API:** ``` cd backend source venv/bin/activate python app.py # API 可用地址 http://localhost:5000 ``` **启动前端(新终端):** ``` cd frontend npm start # Web 界面地址 http://localhost:3000 ``` **使用 CLI:** ``` # 添加到 PATH 或直接使用 ./cli/network_scanner_cli.py --help # 示例扫描 network-scanner-cli subdomain example.com network-scanner-cli port 192.168.1.1 --port-range 1-1000 network-scanner-cli vuln https://example.com --scan-type web ``` ## 使用示例 ### Web 界面 1. **仪表板**:查看扫描统计信息、最近的结果和快捷操作 2. **扫描器**:配置并运行不同类型的安全扫描 3. **结果**:利用 AI 洞察分析发现的问题 4. **报告**:生成专业的安全评估报告 5. **AI 助手**:与 AI 聊天以获取安全建议和解释 ### 命令行界面 ``` # 全面的子域名枚举 network-scanner-cli subdomain target.com --output results.json # 使用自定义范围的端口扫描 network-scanner-cli port 10.0.0.1 --port-range 1-65535 # Web 应用漏洞评估 network-scanner-cli vuln https://target.com --scan-type comprehensive # DNS 侦察 network-scanner-cli dns target.com # 生成专业报告 network-scanner-cli report results.json --format pdf ``` ### API 用法 ``` import requests # 启动子域名扫描 response = requests.post('http://localhost:5000/api/scan/subdomain', json={'domain': 'example.com'}) result = response.json() # 获取 AI 分析 ai_response = requests.post('http://localhost:5000/api/ai/chat', json={'message': 'Explain this vulnerability', 'context': result}) ``` ## 架构 Network Scanner 采用模块化架构: ``` Network-Scanner/ ├── backend/ # Python Flask API server │ ├── app.py # Main application │ ├── modules/ # Scanning and AI modules │ └── models/ # Database models ├── frontend/ # React web interface │ ├── src/ │ └── components/ ├── cli/ # Command-line interface ├── reports/ # Generated reports ├── docs/ # Documentation └── scripts/ # Installation and utility scripts ``` ### 核心组件 - **侦察模块**:子域名枚举、端口扫描、DNS/WHOIS 查询 - **AI 助手**:集成 OpenAI 以提供智能分析和建议 - **漏洞扫描器**:Web 应用和网络服务安全评估 - **报告生成器**:创建专业的 PDF/HTML 报告 - **多用户系统**:身份验证、项目和审计日志 ## 扫描类型 ### 1. 子域名枚举 - 暴力破解常见子域名 - 证书透明度日志搜索 - DNS 区域传送尝试 - 对发现的子域名进行 AI 分析 ### 2. 端口扫描 - TCP/UDP 端口发现 - 服务版本检测 - 操作系统指纹识别 - 开放服务的风险评估 ### 3. 漏洞评估 - Web 应用安全测试 - 网络服务漏洞检测 - SSL/TLS 配置分析 - 安全标头验证 ### 4. DNS 枚举 - 收集 A、AAAA、MX、NS、TXT 记录 - DNS 区域信息收集 - 邮件服务器发现 - 基础设施映射 ### 5. WHOIS 查询 - 域名注册信息 - 所有者和联系方式 - 域名服务器识别 - 到期日期监控 ## AI 功能 Network Scanner 集成了 AI 以增强安全评估: - **智能分析**:自动解读扫描结果 - **风险评估**:按严重程度和影响排列发现的问题 - **修复指导**:提供具体的修复建议 - **学习模式**:出于教育目的解释相关技术 - **上下文对话**:用于解答安全问题的交互式 AI 助手 ## 报告 生成多种格式的专业安全报告: - **HTML 报告**:带有图表的交互式 Web 报告 - **PDF 报告**:提供给利益相关者的专业文档 - **JSON 导出**:用于集成的机器可读数据 - **执行摘要**:提供给管理层的高级别发现 ## 安全注意事项 **重要提示**:Network Scanner 仅专为授权的安全测试设计。 - 仅扫描您拥有或获得明确测试许可的系统 - 部分扫描可能会被安全系统检测到 - 遵循负责任的漏洞披露实践 - 尊重速率限制和目标系统资源 - 在测试前查阅当地法律法规 ### 开发环境配置 ``` # Clone 并设置开发环境 git clone https://github.com/frangelbarrera/Network-Scanner.git cd Network-Scanner # 安装开发依赖项 pip install -r backend/requirements-dev.txt npm install --dev --prefix frontend # 运行测试 pytest backend/tests/ npm test --prefix frontend ``` ## 支持 - **文档**:[Wiki](https://github.com/frangelbarrera/Network-Scanner/wiki) - **Bug 报告**:[Issues](https://github.com/frangelbarrera/Network-Scanner/issues) - **讨论**:[GitHub Discussions](https://github.com/frangelbarrera/Network-Scanner/discussions) ## 免责声明 Network Scanner 仅用于教育和授权测试目的。用户在扫描任何系统之前,有责任遵守适用的法律并获得适当的授权。对于滥用此工具,开发者不承担任何责任。 **为网络安全社区倾心 ❤️ 打造**
标签:GitHub, MITM代理, Petitpotam, Python, React, Syscalls, 人工智能, 实时处理, 密码管理, 无后门, 用户模式Hook绕过, 网络安全, 自定义脚本, 逆向工具, 隐私保护