uchihashahin01/cyberpulse-threat-intelligence
GitHub: uchihashahin01/cyberpulse-threat-intelligence
基于 Next.js 构建的现代化威胁情报门户,聚合实时新闻、CVE、事件时间线等多源情报,为安全分析师提供一站式态势感知视图。
Stars: 0 | Forks: 0
# CyberPulse 威胁情报 Hub
CyberPulse 是一个基于 Next.js App Router 和 TypeScript 构建的现代化网络安全情报门户。它将实时威胁新闻、分析师工作流和模块化情报视图融合为一个整洁的多页面体验。
## 亮点
- 实时 + 回退 (fallback) 情报管道:
- GNews API 采集
- 精选网络安全 RSS 聚合
- 用于保障韧性的自动模拟数据回退机制
- 多页面情报模块:
- Dashboard (仪表盘)
- Threat Map (威胁地图)
- CVE Explorer (CVE 浏览器)
- Source Credibility (来源可信度)
- Incident Timeline (事件时间线)
- Alerts (警报)
- Account (账户)
- Admin (管理员,受角色保护)
- 分析师级 UX (用户体验):
- 动画活动导航
- 页面级面包屑导航
- 搜索驱动的 Feed 过滤
- 每个本地账户的收藏持久化
- 带有 IOC/缓解提示的 AI 风格事件摘要模态框
- 性能与质量:
- Next Image 优化(具有健壮的远程主机模式)
- 类型化领域模型和实用工具
- Lint + 生产构建已验证
## 技术栈
- Next.js 16 (App Router)
- TypeScript
- CSS Modules + 全局设计令牌
- Lucide React
- fast-xml-parser
## 本地开发
1. 安装依赖。
```
npm install
```
2. 创建环境文件。
```
cp .env.example .env.local
```
3. 添加你的 API key。
```
GNEWS_API_KEY=your_gnews_api_key
```
4. 启动开发服务器。
```
npm run dev
```
5. 检查生产构建。
```
npm run build
```
## News API 路由
Endpoint (端点):
- GET /api/news
Query parameters (查询参数):
- category: all, malware, data-breach, vulnerability, ransomware, phishing, apt, privacy, general
- search: 自由文本搜索
- limit: 1-50 (默认 24)
示例:
```
curl "http://localhost:3000/api/news?category=malware&search=linux&limit=12"
```
## Admin 访问模型
- Account 模块控制 local storage 中的角色状态。
- Admin 路由保护在 UI 流程中强制执行:
- 对非管理员用户隐藏 Admin 导航/模块可见性。
- 非管理员用户直接访问 /admin 会重定向到 /account。
## 部署到 GitHub Pages
本仓库包含一个 GitHub Actions workflow,位于:
- .github/workflows/deploy-pages.yml
工作原理:
1. 推送到 main。
2. Workflow 构建静态导出并将其部署到 GitHub Pages。
3. 站点从 out artifact 发布。
静态部署模式说明:
- GitHub Pages 是静态托管,因此部署运行在 static-export 模式下。
- 在 static-export 模式下,当服务器 API 不可用时,仪表盘使用打包的模拟情报数据。
- 本地开发和标准服务器部署仍支持实时 API 路由行为。
## 建议的仓库名称
- cyberpulse-threat-intelligence
## 许可证
用于教育和作品集目的的使用和改编。
标签:AI摘要, CVE查询, GPT, IOCs, React, RSS聚合, Syscalls, TypeScript, 仪表盘, 分析师工具, 威胁地图, 威胁情报, 安全插件, 安全运营, 开发者工具, 情报收集, 扫描框架, 数据聚合, 新闻源, 漏洞研究, 漏洞管理, 网络安全, 自动化攻击, 门户平台, 隐私保护