23r01a66y3/Cyber-Risk-Assessment-Threat-Intelligence-Platform

GitHub: 23r01a66y3/Cyber-Risk-Assessment-Threat-Intelligence-Platform

基于Python和Flask构建的网络风险评估平台,集成Nmap扫描、漏洞检测、风险评分与VirusTotal威胁情报,通过可视化仪表板呈现安全态势。

Stars: 0 | Forks: 0

# 🛡️ 网络风险评估与威胁情报平台 ## 📌 概述 本项目是一个使用 Python、Flask 和 Streamlit 构建的**网络风险评估与威胁情报平台**。它扫描目标系统,检测漏洞,分配风险评分,并使用 VirusTotal API 集成外部威胁情报。 该系统有助于识别潜在的安全风险,并通过仪表板将其可视化。 ## 🚀 功能特性 * 🔍 使用 Nmap 进行端口扫描 * 🛡️ 漏洞检测 * ⚠️ 风险评分系统 * 🗄️ SQLite 数据库存储 * 📊 数据可视化(图表与仪表板) * 🌐 使用 VirusTotal API 获取威胁情报 * 📄 报告生成 * 📧 邮件告警(Streamlit 仪表板) ## 🏗️ 项目结构 ``` project/ │ ├── app.py ├── config.py ├── database/ │ ├── db.py │ └── m.py │ ├── scanner/ │ ├── port_scanner.py │ └── vulnerability_scanner.py │ ├── risk/ │ └── risk_engine.py │ ├── threat_intel/ │ └── threat_api.py │ ├── templates/ │ ├── index.html │ └── report.html │ ├── static/ │ └── style.css │ ├── streamlit_app.py └── reports/ ``` ## 🧠 架构 ``` USER ↓ FRONTEND (HTML / Streamlit) ↓ BACKEND (Flask) ├── Port Scanner ├── Vulnerability Scanner ├── Risk Engine ├── Threat Intelligence API ↓ DATABASE (SQLite - cyber_risk.db) ↓ FRONTEND (Results + Charts) ``` ## ⚙️ 使用的技术 * Python * Flask * Streamlit * SQLite * Nmap * Chart.js / Plotly * VirusTotal API ## 📂 模块说明 ### 🔹 database/db.py * 处理数据库连接 * 创建 `scan_results` 表 ### 🔹 database/m.py * 插入和获取扫描结果 ### 🔹 scanner/port_scanner.py * 使用 Nmap 扫描开放端口 ### 🔹 scanner/vulnerability_scanner.py * 将端口映射到漏洞 ### 🔹 risk/risk_engine.py * 分配风险评分 ### 🔹 threat_intel/threat_api.py * 获取威胁情报数据 ### 🔹 app.py * Flask 主应用程序 * 控制工作流程 ### 🔹 streamlit_app.py * 带有图表和告警的高级仪表板 ## 🗄️ 数据库 * **数据库名称:** `cyber_risk.db` * **表:** `scan_results` | 列名 | 描述 | | ---------- | ------------- | | id | 主键 | | port | 端口号 | | issue | 漏洞 | | risk_score | 风险等级 | ## ▶️ 如何运行 ### 1️⃣ 安装依赖 ``` pip install flask streamlit pandas plotly python-nmap requests ``` ### 2️⃣ 运行 Flask 应用 ``` python app.py ``` ### 3️⃣ 运行 Streamlit 仪表板 ``` streamlit run streamlit_app.py ``` ## 🧪 示例目标 * testasp.vulnweb.com * testphp.vulnweb.com * zero.webappsecurity.com ## 📊 输出 * 显示开放端口和漏洞 * 展示风险评分 * 提供图表和分析 * 显示威胁情报(IP, ISP, 国家) ## ⚠️ 挑战 * 将 Nmap 与 Python 集成 * 处理 API 错误 * 设计仪表板 UI * 管理数据库操作 ## 📈 未来展望 * 添加基于 AI 的风险预测 * 集成更多 API (Shodan, Nessus) * 部署到云端 * 添加身份验证系统 ## 📌 注意事项 * 使用有效的 VirusTotal API 密钥 * 系统中必须安装 Nmap ## 🎯 总结 本项目为**网络风险检测、分析和可视化**提供了一个完整的解决方案,帮助用户高效地识别漏洞。 ## 👩‍💻 展示者 **SP Keerthi**
标签:Ask搜索, Chart.js, CTI, Flask, GitHub, HTTP/HTTPS抓包, HTTP工具, Kubernetes, Nmap, Plotly, Python安全工具, SQLite, Streamlit, VirusTotal, 仪表盘, 威胁情报, 安全评估平台, 安全运营, 密码管理, 开发者工具, 态势感知, 扫描框架, 插件系统, 数据统计, 无线安全, 端口扫描, 网络安全, 虚拟驱动器, 访问控制, 逆向工具, 邮件告警, 隐私保护, 风险评分