lekefilipajsys/soc-lab-blueprint

GitHub: lekefilipajsys/soc-lab-blueprint

该项目提供了一个隔离的 SOC 实验室蓝图,整合 Wazuh、Security Onion 和 ELK 用于安全监控、检测和事件响应的实操训练。

Stars: 0 | Forks: 0

# 私有 SOC 实验室蓝图 ![私有 SOC 实验室蓝图](https://raw.githubusercontent.com/lekefilipajsys/soc-lab-blueprint/main/assets/linkedin-project-banner.png) 一个隔离的 SOC 实验室蓝图,用于使用 Security Onion、Wazuh 和轻量级 ELK stack 练习监控、检测、调查和响应。 此项目专为私有虚拟环境设计:homelab、教室、一次性培训网络和蓝队练习靶场。 ## 你将获得 - Security Onion 虚拟机指南,用于网络可见性、警报、Hunt、案例、数据包/元数据调查以及分析师工作流。 - Wazuh 单节点 Docker 启动器,用于主机监控、文件完整性监控、漏洞/配置可见性以及主动响应实践。 - ELK Lite Docker Compose 栈,用于通过 JSON/syslog 事件接入学习 Elasticsearch、Kibana 和 Logstash。 - 针对常见实验室警报(如 SSH 暴力破解、可疑 PowerShell、文件更改和网络扫描)的响应预案。 - 适配 GitHub 的安全文档、验证脚本、忽略规则和 CI 工作流。 ## 安全提示 仅在您拥有或获得明确测试许可的系统和网络上使用此项目。将仪表板和采集端口保持在仅主机、内部或其他隔离的虚拟网络中。请勿将此实验室暴露在公共互联网中。 包含的 Wazuh active-response 示例有意设定为选择性启用。在启用任何自动拦截之前,请调整并测试检测规则。 ## 架构 ``` flowchart LR subgraph "Private Lab Network" endpoints["Windows/Linux lab endpoints"] testbox["Optional test workstation"] wazuh["Wazuh single-node Docker stack"] so["Security Onion VM"] elk["ELK Lite Docker stack"] end endpoints -->|"Wazuh agent: 1514/tcp"| wazuh endpoints -->|"Elastic Agent or syslog"| so endpoints -->|"Mirrored traffic / internal SPAN"| so testbox -->|"Synthetic tests"| endpoints so -->|"Selected JSON events: 5514/tcp or udp"| elk wazuh -->|"Dashboard + alerts"| analyst["Analyst browser"] so -->|"SOC Console + Kibana"| analyst elk -->|"Kibana lab archive"| analyst ``` ## 环境要求 - 虚拟化平台,例如 VMware、VirtualBox、Hyper-V、Proxmox 或类似平台。 - 用于 Wazuh 和 ELK Lite 的 Docker 和 Docker Compose。 - 用于 Wazuh 启动器的 Git。 - 足够的 RAM 和磁盘空间以运行多个安全工具。 建议的实验室配置: | 组件 | 实验室最低配置 | 更好的实验室配置 | 备注 | | --- | ---: | ---: | --- | | ELK Lite | 2 CPU, 4 GB RAM, 30 GB 磁盘 | 4 CPU, 8 GB RAM, 100 GB 磁盘 | Elasticsearch 和 Kibana 默认绑定到 localhost。 | | Wazuh 单节点 | 4 CPU, 8 GB RAM, 50 GB 磁盘 | 4-8 CPU, 16 GB RAM, 100 GB 磁盘 | Linux/WSL2 Docker 主机需要 `vm.max_map_count=262144`。 | | Security Onion 独立部署 | 4 CPU, 24 GB RAM, 200 GB 磁盘, 2 个网卡 | 8 CPU, 32+ GB RAM, SSD, 2+ 个网卡 | 使用一个管理网卡和一个嗅探网卡。 | ## 快速开始 克隆代码仓库,然后验证项目文件: ``` .\scripts\validate-repo.ps1 ``` 启动 ELK Lite 监听器: ``` cd elk-lite Copy-Item .env.example .env docker compose up -d .\scripts\send-test-events.ps1 ``` 在 `http://localhost:5601` 打开 Kibana,并为 `soc-lab-*` 创建一个数据视图。 启动 Wazuh 单节点: ``` cd ..\wazuh .\start-wazuh-single-node.ps1 ``` 打开 `https://localhost`。官方的 Wazuh Docker 栈默认使用 `admin` / `SecretPassword`。在保持实验室在线之前,请更改密码。 使用 [security-onion/VM-setup-checklist.md](security-onion/VM-setup-checklist.md) 将 Security Onion 部署为虚拟机。如果您有足够的内存,请在持久化实验室中使用 Standalone 模式。Evaluation 模式仅用于短时间的临时测试。 ## 仓库结构 ``` . |-- docs/ | |-- architecture.md | |-- github-publish-checklist.md | |-- operations.md | `-- response-playbooks.md |-- elk-lite/ | |-- docker-compose.yml | |-- logstash/ | `-- scripts/send-test-events.ps1 |-- security-onion/ | |-- VM-setup-checklist.md | `-- custom-logstash-forwarding/ |-- wazuh/ | |-- active-response-snippets.xml | |-- agent-install-examples.md | |-- custom-rules/local_rules.xml | `-- start-wazuh-single-node.ps1 |-- scripts/validate-repo.ps1 |-- CONTRIBUTING.md |-- LICENSE `-- SECURITY.md ``` ## 检测与响应实践 从以下练习开始: - 将模拟的 JSON 事件发送到 ELK Lite 并构建 Kibana 数据视图。 - 将 Windows 或 Linux endpoint 注册到 Wazuh 并确认主机警报。 - 添加示例 Wazuh 本地规则并触发 `SOC_LAB_TEST`。 - 使用嗅探接口部署 Security Onion,并从实验室测试工作站生成良性扫描流量。 - 完成 [docs/response-playbooks.md](docs/response-playbooks.md) 并记录每次练习的时间线。 ## 学术用途 当将其定位为设计、实施和评估研究而非工具安装报告时,此项目可支持本科或硕士论文。 建议的论文题目: ``` Design, Implementation, and Evaluation of an Isolated Virtual Security Operations Center for Security Monitoring, Detection, and Incident Response Training ``` 学术规划文档: - [论文提案](docs/thesis-proposal.md):正式标题、摘要、问题陈述、研究问题、方法论、伦理、局限性和章节结构。 - [评估框架](docs/evaluation-framework.md):假设、变量、实验矩阵、指标、评分标准和结果表格。 推荐的研究贡献是一个可复现的 SOC 实验室工件,外加对检测覆盖率、警报保真度、分诊工作流和响应有用性的评估。 ## GitHub 发布 在将代码仓库公开之前,请仔细检查 [docs/github-publish-checklist.md](docs/github-publish-checklist.md)。简短版本包括: - 不要提交 `.env`、证书、数据包捕获、endpoint 日志、虚拟机导出文件或真实的事件数据。 - 运行 `.\scripts\validate-repo.ps1`。 - 在安装有 Docker 的机器上运行 `docker compose -f elk-lite\docker-compose.yml config`。 - 在一次性机器上测试一次 ELK Lite 快速入门。 ## 路线图 - 使用模拟事件添加示例 Kibana 保存对象。 - 添加针对 Windows 和 Linux 实验室 endpoint 的 Wazuh 代理组示例。 - 添加针对常见新手调查的 Security Onion 案例模板。 - 添加仅使用模拟数据的屏幕截图。 - 添加可选的 Terraform 或 Vagrant 示例,以实现可重复的实验室网络。 ## 厂商参考 - Wazuh Docker 部署:https://documentation.wazuh.com/current/deployment-options/docker/wazuh-container.html - Wazuh 主动响应:https://documentation.wazuh.com/current/user-manual/capabilities/active-response/index.html - Elastic Docker Compose 部署:https://www.elastic.co/docs/deploy-manage/deploy/self-managed/install-elasticsearch-docker-compose - Security Onion 文档:https://securityonion.net/docs/ - Security Onion ISO 验证:https://securityonion.net/download/ ## 许可证 MIT。请参阅 [LICENSE](LICENSE)。
标签:AI合规, ELK Stack, Libemu, Security Onion, Wazuh, x64dbg, 安全实验室, 安全运营, 扫描框架, 版权保护, 请求拦截