🌅 BeforeDawn 漏洞管理平台
📖 项目简介
BeforeDawn 是一套由安全人员开发的企业级漏洞全生命周期管理平台。
📄 项目地址
先公开docker下版本,收集下bug,后续会公开前后端
【Docker地址】 https://github.com/rabbitmask/BeforeDawn-docker
💡 核心理念
安全人员的权限 ≈ Admin
开发人员的权限 ≈ NULL
🎯 特色功能
1️⃣ 漏洞案例公开 - 致敬乌云
- ✅ 漏洞修复完成后,可转为公开案例分享到知识库
- ✅ 真实漏洞场景复盘,帮助团队避免重复踩坑
- ✅ 类似乌云的知识分享机制,让经验在团队内流转
2️⃣ 无限轮复测机制 - 修不好就别想交差
- ✅ 支持多轮复测,直到真正修复为止
- ✅ 每次复测失败都会记录详细原因
- ✅ 复测次数越多,开发人员质量评分越低
- ✅ 修不好就别想关闭工单!
3️⃣ 开发人员绩效排名 - 数据说话
| 排行榜 |
评判标准 |
说明 |
| 速度榜 |
平均修复时长 |
修得快的是老司机,修得慢的要挨骂 |
| 质量榜 |
复测通过率 |
一次通过是高手,多次复测是菜鸟 |
4️⃣ 智能知识推荐 - 别tm重复造轮子
- ✅ 根据漏洞类型自动推荐相关修复方案
- ✅ 从已修复漏洞快速生成知识文章
- ✅ 全文检索,秒级查找历史案例
5️⃣ 动态数据字典 - 告别硬编码
- ✅ 所有枚举值通过字典管理,管理员可随时新增
- ✅ 漏洞来源、类型、等级等都支持自定义
- ✅ 再也不用改代码发版本了!
6️⃣ 前端DOM水印 - 防止截图泄密
- ✅ 页面自动显示用户名+时间水印
- ✅ 一键开关,配置文件即可控制
- ✅ 截图泄密?追溯到人!
🛠 技术栈
后端技术
-
核心框架:Spring Boot 3.1.5 + JDK 17
-
安全框架:Spring Security 6.x + JWT
-
持久层:MyBatis-Plus 3.5.5
-
数据库:MySQL 8.0+
-
缓存:Redis 7.x
-
API文档:Knife4j 4.4.0(基于OpenAPI 3.0)
-
连接池:Druid(支持SQL监控)
-
工具库:Hutool 5.8.25
前端技术
-
核心框架:Vue 3.4 + Vite 5.0
-
UI框架:Element Plus 2.5
-
状态管理:Pinia 2.1
-
路由:Vue Router 4.2
-
HTTP库:Axios 1.6
-
富文本编辑器:WangEditor 5.x
-
Markdown编辑器:md-editor-v3
-
图表库:ECharts 5.4
🎭 系统角色与权限
角色定义
| 角色 |
英文Code |
核心职责 |
权限范围 |
| 管理员 |
admin |
系统配置、用户管理、全局统计 |
👑 最高权限 |
| 安全人员 |
security |
漏洞发现、录入、分派、复测、关闭 |
⚔️ 核心权限 |
| 开发人员 |
developer |
接收任务、修复漏洞、提交复测 |
🔧 有限权限 |
权限对比
| 功能模块 |
管理员 |
安全人员 |
开发人员 |
| 系统管理(用户、部门、角色) |
✅ |
❌ |
❌ |
| 数据字典管理 |
✅ |
❌ |
❌ |
| 资产管理 |
✅ |
✅ |
🔍 只读 |
| 漏洞提交 |
✅ |
✅ |
❌ |
| 漏洞分派 |
✅ |
✅ |
❌ |
| 漏洞修复 |
✅ |
❌ |
✅ |
| 漏洞复测 |
✅ |
✅ |
❌ |
| 知识库管理 |
✅ |
✅ |
🔍 只读 |
| 统计报表 |
✅ |
✅ 个人 |
✅ 个人 |
考核指标
开发人员 KPI
| 指标 |
计算方式 |
影响 |
| 修复速度 |
平均修复时长 = 总修复时长 / 已关闭漏洞数 |
速度榜排名 |
| 修复质量 |
复测通过率 = 一次通过数 / 总复测数 × 100% |
质量榜排名 |
| 工作量 |
已修复漏洞总数 |
绩效参考 |
安全人员工作成果
| 指标 |
说明 |
| 漏洞发现数 |
提交的漏洞总数 |
| 复测完成数 |
完成复测的漏洞数 |
| 知识产出 |
发布的知识文章数 |
🔄 漏洞生命周期
状态流转图
┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐
│ 待分派 │──────>│ 处理中 │──────>│ 修复中 │──────>│ 待复测 │
│submitted│ │assigned │ │ fixing │ │retesting│
└─────────┘ └─────────┘ └─────────┘ └─────────┘
│
│ 复测通过
▼
┌─────────┐
复测未通过 ◄──────│ 已关闭 │
│ │ closed │
│ └─────────┘
▼
┌────────────┐
│复测未通过 │
│retest_failed│──┐
└────────────┘ │
▲ │
└─────────┘
多轮复测循环
操作权限
| 状态 |
可执行操作 |
操作人 |
| 待分派 |
分派给开发人员 |
管理员/安全人员 |
| 处理中 |
开始修复 |
开发人员 |
| 修复中 |
提交复测 |
开发人员 |
| 待复测 |
复测通过/复测不通过 |
安全人员 |
| 复测未通过 |
重新修复 |
开发人员 |
| 已关闭 |
转为案例公开 |
安全人员 |
📊 核心功能
1. 漏洞管理
- ✅ 漏洞全生命周期管理(提交→分派→修复→复测→关闭)
- ✅ 多轮复测机制(支持无限次复测,直到通过)
- ✅ 复测历史记录(详细记录每次复测结果和原因)
- ✅ 操作日志追踪(所有操作可追溯)
- ✅ 漏洞附件上传(支持截图、POC等)
- ✅ 公开漏洞案例(修复完成后转为知识分享)
2. 资产管理
- ✅ 资产CRUD(创建、查询、更新、删除)
- ✅ 资产与漏洞关联(创建漏洞时自动带出负责人)
- ✅ 资产漏洞统计(查看资产的漏洞分布)
- ✅ 资产变更历史(记录负责人变更)
- ✅ 资产批量导入导出(Excel格式)
3. 知识库
- ✅ 知识文章CRUD(支持Markdown编辑)
- ✅ 分类管理(多级分类)
- ✅ 智能推荐(根据漏洞类型推荐相关知识)
- ✅ 从漏洞生成知识(一键转换已修复漏洞)
- ✅ 全文检索(快速查找历史案例)
- ✅ 公开案例分享(致敬乌云)
4. 数据字典
- ✅ 字典类型管理(支持新增字典类型)
- ✅ 字典数据管理(动态维护选项值)
- ✅ 前端动态加载(避免硬编码)
- ✅ 批量查询接口(减少请求次数)
5. 统计分析
全局统计
- ✅ 漏洞总览(总数、待处理、已关闭等)
- ✅ 趋势图(按时间统计漏洞新增趋势)
- ✅ 风险分布(按等级统计)
开发人员统计
- ✅ 修复数量统计
- ✅ 平均修复时长
- ✅ 复测通过率
- ✅ 速度榜排名
- ✅ 质量榜排名
部门统计
资产统计
📂 部分截图
登录界面
Dashboard
知识共享
统计分析
字典维护
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。