Skip to content

rabbitmask/BeforeDawn-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌅 BeforeDawn 漏洞管理平台

致敬每一个黎明前的守夜人

"在漏洞被利用之前发现它,在黎明到来之前修复它"

Version Spring Boot License JDK


img.png img.png

📖 项目简介

BeforeDawn 是一套由安全人员开发的企业级漏洞全生命周期管理平台。

这不是开发人员画的饼,也不是产品经理的需求文档堆砌,而是真正从安全运营实战中提炼出来的系统。

📄 项目地址

【Docker地址】 https://github.com/rabbitmask/BeforeDawn-docker

💡 核心理念

安全人员的权限 ≈ Admin 开发人员的权限 ≈ NULL

🎯 特色功能

1️⃣ 漏洞案例公开 - 致敬乌云

  • ✅ 漏洞修复完成后,可转为公开案例分享到知识库
  • ✅ 真实漏洞场景复盘,帮助团队避免重复踩坑
  • ✅ 类似乌云的知识分享机制,让经验在团队内流转

2️⃣ 无限轮复测机制 - 修不好就别想交差

  • ✅ 支持多轮复测,直到真正修复为止
  • ✅ 每次复测失败都会记录详细原因
  • ✅ 复测次数越多,开发人员质量评分越低
  • 修不好就别想关闭工单!

3️⃣ 开发人员绩效排名 - 数据说话

排行榜 评判标准 说明
速度榜 平均修复时长 修得快的是老司机,修得慢的要挨骂
质量榜 复测通过率 一次通过是高手,多次复测是菜鸟

4️⃣ 智能知识推荐 - 别tm重复造轮子

  • ✅ 根据漏洞类型自动推荐相关修复方案
  • ✅ 从已修复漏洞快速生成知识文章
  • ✅ 全文检索,秒级查找历史案例

5️⃣ 动态数据字典 - 告别硬编码

  • ✅ 所有枚举值通过字典管理,管理员可随时新增
  • ✅ 漏洞来源、类型、等级等都支持自定义
  • 再也不用改代码发版本了!

6️⃣ 前端DOM水印 - 防止截图泄密

  • ✅ 页面自动显示用户名+时间水印
  • ✅ 一键开关,配置文件即可控制
  • 截图泄密?追溯到人!

🛠 技术栈

默认账号

角色 用户名 密码 说明
管理员 admin 123456 最高权限,管理一切
安全人员 security01 123456 提交漏洞、分派、复测
开发人员 dev01 123456 修复漏洞、提交复测

🎭 系统角色与权限

角色定义

角色 英文Code 核心职责 权限范围
管理员 admin 系统配置、用户管理、全局统计 👑 最高权限
安全人员 security 漏洞发现、录入、分派、复测、关闭 ⚔️ 核心权限
开发人员 developer 接收任务、修复漏洞、提交复测 🔧 有限权限

权限对比

功能模块 管理员 安全人员 开发人员
系统管理(用户、部门、角色)
数据字典管理
资产管理 🔍 只读
漏洞提交
漏洞分派
漏洞修复
漏洞复测
知识库管理 🔍 只读
统计报表 ✅ 个人 ✅ 个人

考核指标

开发人员 KPI

指标 计算方式 影响
修复速度 平均修复时长 = 总修复时长 / 已关闭漏洞数 速度榜排名
修复质量 复测通过率 = 一次通过数 / 总复测数 × 100% 质量榜排名
工作量 已修复漏洞总数 绩效参考

安全人员工作成果

指标 说明
漏洞发现数 提交的漏洞总数
复测完成数 完成复测的漏洞数
知识产出 发布的知识文章数

🔄 漏洞生命周期

状态流转图

┌─────────┐       ┌─────────┐       ┌─────────┐       ┌─────────┐
│ 待分派  │──────>│ 处理中  │──────>│ 修复中  │──────>│ 待复测  │
│submitted│       │assigned │       │ fixing  │       │retesting│
└─────────┘       └─────────┘       └─────────┘       └─────────┘
                                                              │
                                                              │ 复测通过
                                                              ▼
                                                        ┌─────────┐
                                      复测未通过 ◄──────│ 已关闭  │
                                      │               │ closed  │
                                      │               └─────────┘
                                      ▼
                               ┌────────────┐
                               │复测未通过   │
                               │retest_failed│──┐
                               └────────────┘  │
                                      ▲         │
                                      └─────────┘
                                   多轮复测循环

操作权限

状态 可执行操作 操作人
待分派 分派给开发人员 管理员/安全人员
处理中 开始修复 开发人员
修复中 提交复测 开发人员
待复测 复测通过/复测不通过 安全人员
复测未通过 重新修复 开发人员
已关闭 转为案例公开 安全人员

📊 核心功能

1. 漏洞管理

  • ✅ 漏洞全生命周期管理(提交→分派→修复→复测→关闭)
  • ✅ 多轮复测机制(支持无限次复测,直到通过)
  • ✅ 复测历史记录(详细记录每次复测结果和原因)
  • ✅ 操作日志追踪(所有操作可追溯)
  • ✅ 漏洞附件上传(支持截图、POC等)
  • ✅ 公开漏洞案例(修复完成后转为知识分享)

2. 资产管理

  • ✅ 资产CRUD(创建、查询、更新、删除)
  • ✅ 资产与漏洞关联(创建漏洞时自动带出负责人)
  • ✅ 资产漏洞统计(查看资产的漏洞分布)
  • ✅ 资产变更历史(记录负责人变更)
  • ✅ 资产批量导入导出(Excel格式)

3. 知识库

  • ✅ 知识文章CRUD(支持Markdown编辑)
  • ✅ 分类管理(多级分类)
  • ✅ 智能推荐(根据漏洞类型推荐相关知识)
  • ✅ 从漏洞生成知识(一键转换已修复漏洞)
  • ✅ 全文检索(快速查找历史案例)
  • ✅ 公开案例分享(致敬乌云)

4. 数据字典

  • ✅ 字典类型管理(支持新增字典类型)
  • ✅ 字典数据管理(动态维护选项值)
  • ✅ 前端动态加载(避免硬编码)
  • ✅ 批量查询接口(减少请求次数)

5. 统计分析

全局统计

  • ✅ 漏洞总览(总数、待处理、已关闭等)
  • ✅ 趋势图(按时间统计漏洞新增趋势)
  • ✅ 风险分布(按等级统计)

开发人员统计

  • ✅ 修复数量统计
  • ✅ 平均修复时长
  • ✅ 复测通过率
  • ✅ 速度榜排名
  • ✅ 质量榜排名

部门统计

  • ✅ 部门漏洞总数
  • ✅ 部门修复率
  • ✅ 部门排名

资产统计

  • ✅ 资产风险分布
  • ✅ 高危资产TOP10

🤝 贡献指南

欢迎各位大佬提 Issue 和 PR!


📄 开源协议

Apache License 2.0


👨‍💻 作者

RabbitMask


致敬每一个在黎明前守夜的安全人员

🔧 更新日志

### V1.0版本
12.2    
修复资产管理批量导出bug   @yeluhuayu


12.11
修复登录超时token过期浏览器缓存却未清除的bug

12.16
修复首页漏洞风险等级不匹配的bug,优化前端UI
修复现有字典禁用redis缓存不能实时更新的bug
修复快速登录登出换账户cookie缓存更新不及时bug(localStorage清除不彻底)  感谢@amd6700k

---------------------------------------------------------------------
### V1.1版本(改动较大,数据库需重构)
2026.1.14
修复前端分页异常    感谢@amd6700k
优化资产列表显示,增加查看功能,漏洞关联    
增加日志管理
增加告警管理  基于钉钉webhook实现,可自定义消息类型   感谢@amd6700k


2026.1.19    
修复资产管理查询接口过滤异常的bug    感谢@facodk
修复漏洞修复时触发首页动态漏洞已公开的逻辑bug    感谢@e982b1
修复附件不能显示原有文件名称和大小的bug(加了个表,原来偷懒了)   感谢@e982b1
重大更新,更换logo,优化显示    /手动狗头

2026.1.20
收拢初始资产类型只包含Web 应用、API 接口、域名、IP地址、数据库、其他

2026.2.24
UI 重构,保持设计语言的统一性

---------------------------------------------------------------------
### V1.2版本(重大更新,数据库需重构)
2026.04.02
优化漏洞详情、文章详情展示时图片不能自适应渲染的问题
优化前端表格居中显示列宽可拖拽
优化日志管理的查询与显示,增加告警日志查询
优化资产详情界面最近操作卡片显示和内容
优化新增资产、新增用户等选择部门时没有层级的问题 感谢@nuoyan
优化资产列表搜索,对关键字进行聚合搜索
优化资产所属边界,当前资产负责人只能为开发人员,慢慢的我感觉这个词儿可能不太恰当,是不是普通用户更恰当,暂不更改
增加漏洞列表和资产列表批量删除和导出(已选择项)及全选筛选按钮 感谢@yeluhuayu
增加系统中web链接左键菜单,方便复制和新标签也打开
增加修复和复测描述markdown支持(允许图片直接粘贴),同步重构漏洞详情功能,全新设计适配过程详情 感谢@NineOneeeee @yeluhuayu
SOC联动,作为SOC系列产品,当前资产格式已适配,可由ASM直接导入(仅文件导入支持,计划后期适配接口同步,当前ASM接口已预留)
 


About

BeforeDawn 漏洞全生命周期管理平台 docker部署项目

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors