MuhammadHuzaifaFarrukh/National-Cybersecurity-Defense-Framework
GitHub: MuhammadHuzaifaFarrukh/National-Cybersecurity-Defense-Framework
这是一个基于 MongoDB 和 Mongoose 构建的生产级网络安全防御数据库框架,旨在为国家级安全运营中心提供涵盖威胁情报、事件响应和安全审计的综合数据底座。
Stars: 0 | Forks: 0
# 国家网络安全防御框架 (NCDF) 🛡️
**国家网络安全防御框架 (NCDF)** 是一个生产级数据库系统,旨在作为国家安全运营中心的数据支柱。本项目采用 **MongoDB** 和 **Mongoose** 构建,展示了管理复杂网络安全数据(包括实时警报、事件追踪和网络事件日志)的高度可扩展方法。
## 🚀 核心功能
### 1. 文档导向架构
利用 MongoDB 的 BSON 格式处理动态网络安全数据结构(日志、数据包头和取证记录),摆脱了传统 SQL 表格的僵化限制。
### 2. 综合安全生态系统
该数据库由 **13 个相互关联的集合** 组成,涵盖了防御框架的所有运营层面:
* **核心运营:** `Incidents`, `SecurityAlerts`, `NetworkEvents`。
* **基础设施:** `Assets`, `Vulnerabilities`, `ThreatIntelligence`。
* **行政管理:** `Users`, `AccessLogs`, `AuditTrails`。
* **人员管理:** `TrainingModules`, `TrainingRecords`, `Certifications`。
### 3. 高级查询与聚合
* **复杂 Pipeline:** 实现多阶段聚合以支持实时仪表盘展示,例如严重性分布和分析师绩效指标。
* **CRUD 操作:** 为所有安全实体提供强大的创建、读取、更新和删除操作。
### 4. 性能优化
* **索引策略:** 实现了自定义的单字段、复合和 TTL 索引,以确保亚秒级的查询响应。
* **Schema 设计:** 策略性地使用 **Embedding**(实现高读取性能)和 **Referencing**(保证数据完整性)。
### 5. 云基础设施
* **部署:** 托管在 **MongoDB Atlas** (Cluster0) 上,以实现高可用性和生产级的可靠性。
* **安全性:** 采用 IP 白名单和 SCRAM 身份验证来保护敏感的国家防御数据。
## 🛠️ 技术栈
* **数据库:** MongoDB (Atlas Cloud)
* **ODM:** Mongoose
* **运行环境:** Node.js
* **操作系统环境:** Kali Linux / Windows
## 📂 数据库 Schema 概述
| 集合 | 描述 | 主键 |
| :--- | :--- | :--- |
| `Users` | 系统用户(管理员、分析师、响应人员) | `user_id` |
| `Incidents` | 安全事件的详细追踪记录 | `incident_id` |
| `SecurityAlerts` | 监控工具的自动触发警报 | `alert_id` |
| `NetworkEvents` | 网络流量/数据包的原始日志 | `event_id` |
| `ThreatIntelligence`| 已知的恶意 IP 和特征码 | `intel_id` |
## 🚦 快速开始
### 前置条件
* 已安装 Node.js
* 拥有 MongoDB Atlas 账号或本地 MongoDB 实例
### 安装说明
1. **克隆仓库:**
git clone [https://github.com/your-username/NCDF-Database-Framework.git](https://github.com/your-username/NCDF-Database-Framework.git)
cd NCDF-Database-Framework
2. **安装依赖项:**
npm install
3. **配置环境变量:**
在根目录创建 .env 文件。
MONGODB_URI=your_mongodb_atlas_connection_string PORT=3000
4. **初始化数据库:**
node scripts/seed-data.js
📊 聚合示例
以下示例是用于生成严重性分布报告的 Pipeline:
```
db.incidents.aggregate([
{ $match: { status: "open" } },
{ $group: { _id: "$severity", count: { $sum: 1 } } },
{ $sort: { count: -1 } }
]);
```
## 👥 贡献者
我们的团队由来自 **旁遮普大学 (PUCIT)** 的热心学生组成,大家共同努力构建一个强大的防御框架。
| 姓名 | 角色 |
| :--- | :--- |
| **[M. Huzaifa Farrukh](https://github.com/MuhammadHuzaifaFarrukh)** | 数据库架构师与云端负责人 |
| **[Hammad Ashfaq](https://github.com/hammad-x25)** | 后端开发与 Schema 设计师 |
| **[Huzayfa Siddique](https://github.com/huzayfaSiddique)** | 安全分析师与数据建模师 |
📜 许可证
本项目是为旁遮普大学 (PUCIT) 的高级数据库管理系统课程开发的。
标签:BSON, CISA项目, CSV输出, DNS 反向解析, GPT, HTTP/HTTPS抓包, IP 地址批量处理, MITM代理, MongoDB, MongoDB Atlas, Mongoose, Shodan, Streamlit, 事件追踪, 云数据库, 全栈安全, 占用监测, 国家网络安全防御, 威胁情报, 子域名变形, 安全告警, 安全运营中心, 审计日志, 工单管理, 库, 应急响应, 开发者工具, 态势感知, 插件系统, 数据库框架, 数据聚合, 数据驱动, 文档型数据库, 无线安全, 溯源分析, 漏洞管理, 演练模块, 生产级, 系统架构, 网络事件日志, 网络安全, 网络安全框架, 网络映射, 自定义脚本, 访问控制, 资产管理, 隐私保护, 靶场训练, 高性能索引