hiskjuc/CyberIncidentManager
GitHub: hiskjuc/CyberIncidentManager
基于 Python 和 SQLite 构建的网络安全事件管理桌面应用,提供事件跟踪、角色权限控制、仪表板和审计日志等功能。
Stars: 0 | Forks: 0
# Cyber Incident Manager
Cyber Incident Manager 是一款作为大学网络防御项目开发的桌面应用程序。该系统使用 Python、SQLite 和 CustomTkinter 构建,遵循 MVC 架构模式,为网络安全事件管理提供了一个简单且有组织的平台。
## 功能
### 身份验证与访问控制
* 用户身份验证
* 基于角色的权限
* 管理员、分析师和查看者配置文件
### 事件管理
* 创建事件
* 编辑事件
* 删除事件
* 事件详情视图
* 事件责任人分配
### 事件跟踪
* 评论
* 变更历史
* 事件时间线
* 审计日志
### 仪表板
* 运营仪表板
* 执行仪表板
* 事件统计
* 严重程度分布
* 状态分布
### 知识库
* 内部网络安全文章
* 流程和响应指南
* 知识共享
### 搜索
* 全局搜索
* 事件查找
* 用户查找
### 数据导出
* CSV 导出功能
## 技术
* Python 3
* SQLite
* CustomTkinter
* Tkinter
* Pandas
* Matplotlib
* PyInstaller
## 架构
本项目遵循 MVC (Model-View-Controller) 架构:
```
controllers/
models/
views/
database/
utils/
```
### Models
负责用户和事件等领域实体。
### Views
使用 CustomTkinter 开发的图形界面。
### Controllers
负责业务逻辑、权限、验证和数据库操作。
### Database
用于数据持久化的 SQLite 本地数据库。
## 用户角色
### 管理员
* 完全系统访问权限
* 管理用户
* 管理事件
* 配置系统设置
### 分析师
* 创建事件
* 编辑事件
* 添加评论
* 访问仪表板
### 查看者
* 只读访问权限
* 查看事件
* 查看仪表板
## 项目结构
```
CyberIncidentManager
│
├── controllers/
├── models/
├── views/
├── database/
├── utils/
│
├── main.py
├── requirements.txt
├── CyberIncidentManager.spec
└── build_exe.bat
```
## 安装说明
### 克隆仓库
```
git clone https://github.com/hiskjuc/CyberIncidentManager.git
cd CyberIncidentManager
```
### 创建虚拟环境
```
python -m venv .venv
```
### 激活环境
Windows:
```
.venv\Scripts\activate
```
### 安装依赖
```
pip install -r requirements.txt
```
### 运行应用程序
```
python main.py
```
## 构建可执行文件
```
pip install -r requirements-build.txt
build_exe.bat
```
或者:
```
pyinstaller --clean CyberIncidentManager.spec
```
## 学术背景
本项目最初是为网络防御课程开发的,后来作为个人学习项目进行了扩展,学习内容包括:
* 软件架构
* 桌面开发
* 数据库管理
* 网络安全工作流
* 事件响应流程
## 人工智能使用情况
本项目的开发得到了以下工具的协助:
* ChatGPT
* OpenAI Codex
这些工具用于协助规划、实现、调试、文档编写和代码审查。所有生成的代码在集成到项目之前都经过了审查、测试和验证。
## 许可证
本项目可用于教育和作品集展示目的。
标签:PB级数据处理, Python, SQLite, 事件管理, 安全运维, 无后门, 桌面应用, 漏洞挖掘, 网络安全, 逆向工具, 隐私保护