terhumphrey/enterprise-security-lab-nist-800-171
GitHub: terhumphrey/enterprise-security-lab-nist-800-171
基于 Elastic Stack 搭建的企业级安全监控实验室,涵盖 SIEM 管理、检测工程、事件响应及 NIST SP 800-171 合规文档。
Stars: 0 | Forks: 0
# 企业安全实验室:ELK SIEM、检测工程与 NIST SP 800-171 文档

本仓库记录了一个基于 Elastic Stack 的企业级安全监控环境的设计、实现和运行。它包括架构文档、部署指南、操作规程以及正在开发的 NIST SP 800-171 安全控制文档。
## 目录
- [项目概述](#project-overview)
- [项目目标](#project-objectives)
- [环境概述](#environment-overview)
- [仓库结构](#repository-structure)
- [文档](#documentation)
- [使用的技术](#technologies-used)
- [当前项目状态](#current-project-status)
- [学习目标](#learning-goals)
- [展示的技能](#skills-demonstrated)
- [未来改进](#future-enhancements)
- [截图](#screenshots)
- [入门指南](#getting-started)
- [免责声明](#disclaimer)
- [作者](#author)
- [许可证](#license)
# 项目概述
企业安全实验室是一个自托管的网络安全培训环境。它旨在模拟小型企业安全运营中心 (SOC) 中常见的技术和工作流。
本项目的主要目标是通过实践培养在 SIEM 管理、集中式日志记录、端点监控、Active Directory、检测工程和事件响应方面的动手能力,同时生成展示该环境的设计、实现和运行的专业文档。
本仓库记录了实验室的完整生命周期,包括初始设计、部署、配置、安全监控和未来的改进。
# 项目目标
- 构建功能齐全的 Elastic Stack SIEM 环境
- 部署和管理 Elasticsearch、Kibana 和 Fleet Server
- 配置来自 Windows 和 Linux 系统的集中式日志收集
- 部署和管理 Elastic Agent
- 实现 Active Directory 域服务
- 使用 Sysmon 提升 Windows 可见性
- 创建和测试自定义检测规则
- 练习安全调查和事件响应
- 编写专业、可复现的技术文档
# 环境概述
## 基础设施
| 组件 | 技术 |
|-----------------------|-----------------------|
| Hypervisor | Oracle VirtualBox |
| Linux 平台 | Rocky Linux 9.8 |
| Windows Server | Windows Server 2025 |
| Windows 客户端 | Windows 11 Pro |
| SIEM 平台 | Elastic Stack 8.13.4 |
| 容器平台 | Docker |
## 核心组件
- Elasticsearch
- Kibana
- Fleet Server
- Elastic Agent
- Active Directory
- DNS
- Sysmon(计划中)
# 仓库结构
```
flowchart TD
ROOT["enterprise-security-lab-nist-800-171"]
ROOT --> README["README.md"]
ROOT --> LICENSE["LICENSE"]
ROOT --> DOCUMENTATION["docs/"]
DOCUMENTATION --> D01["01-Architecture.md"]
DOCUMENTATION --> D02["02-Initial-Design.md"]
DOCUMENTATION --> D03["03-Elastic-Deployment.md"]
DOCUMENTATION --> D04["04-Elastic-Fleet-Deployment.md"]
DOCUMENTATION --> D05["05-Windows-AD.md"]
DOCUMENTATION --> D06["06-Windows-Agent.md"]
DOCUMENTATION --> D07["07-Sysmon.md"]
DOCUMENTATION --> D08["08-Elastic-Security.md"]
DOCUMENTATION --> D09["09-Detection-Rules.md"]
DOCUMENTATION --> D10["10-Incident-Response.md"]
DOCUMENTATION --> D99["99-Lab-Journal.md"]
DOCUMENTATION --> DIAGRAMS["diagrams/"]
DOCUMENTATION --> SCREENSHOTS["screenshots/"]
DOCUMENTATION --> CONFIGS["configs/"]
```
# 文档
| 文档 | 描述 |
|-----------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 01-Architecture.md | 记录整体架构、基础设施、网络、身份服务和系统关系。 |
| 02-Initial-Design.md | 记录最初的目标、需求、限制、技术选择和架构决策。 |
| 03-Elastic-Deployment.md | 记录 Elasticsearch、Kibana、Docker 的安装和部署,以及初始 Elastic Stack 环境。 |
| 04-Elastic-Fleet-Deployment.md | 记录 Elastic Fleet 部署、Fleet Server 配置、Elastic Agent 注册、agent policy、集成以及集中式端点管理。 |
| 05-Windows-AD.md | 记录 Active Directory、DNS、组织结构和身份管理配置。 |
| 06-Windows-Agent.md | 记录 Windows 端点上 Elastic Agent 的部署、注册和配置。 |
| 07-Sysmon.md | 记录 Sysmon 的安装、配置以及 Windows 端点可见性的改进。 |
| 08-Elastic-Security.md | 记录 Elastic Security 配置,包括检测、告警、案例和分析师工作流。 |
| 09-Detection-Rules.md | 记录自定义检测规则、测试流程和 MITRE ATT&CK 映射。 |
| 10-Incident-Response.md | 记录事件响应工作流、调查、证据收集和经验教训。 |
| 99-Lab-Journal.md | 记录整个项目的实施进度、故障排除、设计决策和经验教训。 |
# 使用的技术
- Elastic Stack
- Elasticsearch
- Kibana
- Fleet Server
- Elastic Agent
- Docker
- Rocky Linux 9.8
- Windows Server 2025
- Windows 11 Pro
- Active Directory Domain Services
- DNS
- Sysmon
- Oracle VirtualBox
# 当前项目状态
状态:积极开发中
已完成:
- 初始项目规划
- 架构文档
- 初始设计文档
- Elastic Stack 部署
- Active Directory 部署
进行中:
- Fleet 配置
- Windows 端点部署
- Elastic Agent 注册
计划中:
- Sysmon 部署
- 检测工程
- 事件响应工作流
- 威胁狩猎场景
- 攻击模拟
- 额外的 Windows 和 Linux 系统
# 学习目标
本项目旨在培养以下方面的实践经验:
- SIEM 管理
- 安全监控
- 端点可见性
- Active Directory
- Windows 管理
- Linux 管理
- 检测工程
- MITRE ATT&CK 框架
- 事件响应
- 安全运营中心 (SOC) 工作流
# 展示的技能
本项目展示了在以下方面的实践经验:
## SIEM 管理
- Elasticsearch
- Kibana
- Fleet Server
- Elastic Agent 管理
- 仪表盘创建
- 日志摄取与分析
## 系统管理
- Rocky Linux
- Windows Server 2025
- Windows 11
- Docker
- VirtualBox
## 身份管理
- Active Directory Domain Services
- DNS
- 组策略
- 域管理
## 安全运营
- 端点监控
- 检测工程
- 威胁狩猎
- 安全调查
- 事件响应工作流
## 文档
- 技术文档
- 架构设计
- 部署流程
- 配置管理
- 故障排除文档
# 未来改进
计划的改进包括:
- 部署额外的 Windows 工作站
- 部署额外的 Linux 服务器
- 添加 Kali Linux 攻击工作站
- 在所有 Windows 系统中部署 Sysmon
- 创建自定义 Elastic 检测规则
- 实现 MITRE ATT&CK 映射
- 模拟常见攻击场景
- 开发威胁狩猎 playbook
- 扩展事件响应文档
- 自动化部分部署流程
# 截图
随着环境达到更多的实施里程碑,将添加相应的截图。
计划添加的截图包括:
## Elastic Stack
- Kibana 安全概览仪表盘
- Elasticsearch 集群健康状况
- Fleet Server 状态
- Agent 注册状态
## Active Directory
- 域控制器配置
- Active Directory 用户和计算机
- DNS 配置
- 组策略配置
## 安全运营
- 安全告警
- 检测规则执行
- 时间线调查
- 主机活动视图
## 实验室基础设施
- 虚拟机清单
- 网络架构
- 部署图表
# 入门指南
本仓库记录了 Elastic Stack SIEM 家庭实验室的设计、部署和运行。
文档按照最初实施时使用的顺序进行组织,允许从零开始重新创建该环境。
每份文档都建立在前一份文档的基础之上,并包括对实施步骤和关键设计决策背后原因的解释。
## 前置条件
要复现此实验室,您应该具备:
- 基本的 Linux 管理知识
- 基本的 Windows Server 管理知识
- 熟悉虚拟化概念
- Oracle VirtualBox
- Rocky Linux 安装介质
- Windows Server 2025 安装介质
- Windows 11 Pro 安装介质
- 用于下载软件的可靠互联网连接
## 硬件要求
最低建议配置:
- 现代多核处理器
- 建议 32GB RAM
- 500GB 可用存储空间
- 启用硬件虚拟化
- 建议使用 SSD 存储
此实验室的设计基于:
- Intel Mac Mini(16GB RAM)
- Apple Silicon MacBook Air(32GB RAM)
## 部署顺序
文档按照用于理解、部署和运行环境的推荐审查顺序进行组织。
1. 架构
2. 初始设计
3. Elastic 部署
4. Elastic Fleet 部署
5. Windows Active Directory
6. Windows Agent 部署
7. Sysmon
8. Elastic Security
9. 检测规则
10. 事件响应
实验室日志记录了整个项目的完整实施时间表和故障排除过程。
# 免责声明
此环境仅用于教育、研究和作品集展示目的。所有系统均部署在受控的家庭实验室环境中,不适用于生产环境。
# 作者
Terry Humphrey
网络安全家庭实验室项目
GitHub:https://github.com/terhumphrey
LinkedIn:https://www.linkedin.com/in/terhumphrey/
# 许可证
本项目采用 MIT 许可证授权。有关详细信息,请参阅 LICENSE 文件。
标签:Active Directory, Elastic Stack, MIT许可证, NIST SP 800-171, Plaso, Terraform 安全, 企业安全, 库, 应急响应, 流量重放, 网络资产管理, 请求拦截, 越狱测试