Pranjal-1234/cyber-threat-intelligence-portal

GitHub: Pranjal-1234/cyber-threat-intelligence-portal

一个基于 React 与 Node.js 构建的网络威胁情报门户,提供威胁情报管理、自动化风险评分和可视化仪表盘功能。

Stars: 0 | Forks: 0

# 网络威胁情报 (CTI) 门户 一个为学生实习项目构建的完整、整洁且简单的 CTI 门户。 ## 技术栈 - **前端:** React.js, Bootstrap, Chart.js, Lucide-React - **后端:** Node.js, Express.js, JWT - **数据库:** MySQL ## 功能 - 使用 JWT 的用户身份验证(注册/登录) - 基于角色的访问控制(Admin/User) - 威胁情报管理(添加/查看/删除) - 自动化风险评分逻辑 - 带有威胁统计信息的交互式 Dashboard ## 安装说明 ### 1. 数据库配置 - 打开你的 MySQL 终端或 phpMyAdmin。 - 运行 `database.sql` 中的 SQL 命令来创建数据库和表。 - 默认情况下,它需要一个名为 `cyber_threat_db` 的数据库,使用 `root` 用户且无密码。 ### 2. 后端配置 - 在 `backend/` 目录中打开一个终端。 - 运行 `npm install` 安装依赖项。 - 如果你的 MySQL 凭据不同,请更新 `.env` 文件。 - 运行 `npm run dev` 在端口 5000 上启动后端服务器。 ### 3. 前端配置 - 在 `frontend/` 目录中打开一个新终端。 - 运行 `npm install` 安装依赖项。 - 运行 `npm start` 启动 React 应用程序。 - 该应用程序将在 `http://localhost:3000` 上可用。 ## 使用说明 1. 注册一个新用户(如果你想测试删除功能,请选择“Admin”角色)。 2. 使用你的凭据登录。 3. 转到 **Threat Intelligence** 页面报告新威胁。 4. 尝试添加包含“malicious”或“phishing”等关键字的威胁,以查看自动化风险评分的实际效果。 5. 查看 **Dashboard** 获取可视化统计信息。 ## 风险评分逻辑 - **高:** 如果威胁值包含关键字 `malicious`。 - **中:** 如果威胁值包含关键字 `phishing`。 - **低:** 针对所有其他威胁。
标签:GNU通用公共许可证, MITM代理, Node.js, React, Syscalls, 威胁情报, 安全运营, 开发者工具, 扫描框架, 自定义脚本, 风险评分