bvlik/hospital-security-iac
GitHub: bvlik/hospital-security-iac
通过 PowerShell 以代码形式部署加固的 Windows 11 医院工作站(含 RBAC、NTFS ACL 隔离与 shell 锁定),并配备实时 Go SOC 终端仪表板验证安全策略的落地效果。
Stars: 0 | Forks: 0
# 🏥 hospital-security-iac
**部署一台经过强化的 Windows 11 医院工作站 —— 然后实时监控它。**
数据驱动的 PowerShell 负责配置 RBAC 身份,使用 NTFS ACL 隔离文件夹,
并锁定命令解释器;同时配备实时 Go SOC 仪表板,证明
每一项更改都已落实到系统中。以代码形式实现纵深防御。
[](LICENSE)




## 为什么
没有检测的预防只完成了一半的控制。本项目构建了一个小型医院工作站,按照你期望的任何敏感端点构建方式 —— **最小权限、数据隔离、强化的 shell** —— 但通过同时提供**检测**部分来保持其可靠性:一个实时 SOC 视图,将“ACL 应该阻止该操作”转变为“这是证明它已阻止的 4663 事件”。
一切都是**数据驱动**的:组、用户和文件夹都存在于 JSON 中,因此添加部门或账户只需编辑配置,而不是更改代码。
## 包含内容
| 层级 | 技术 | 任务 |
|-------|------|-----|
| **IAM / 配置** | PowerShell | 直接从 JSON 读取的本地 `G_*` RBAC 组和用户账户 |
| **ACL 与隔离** | PowerShell | NTFS 继承破坏、最小权限、3 个交叉权限场景 |
| **强化** | PowerShell | 针对标准用户在 `cmd.exe` / `powershell.exe` 上设置显式 `Deny` |
| **SOC 仪表板** | Go (tview/tcell) | 在终端 UI 中实时显示用户、组和 Windows 安全事件 |
## 交叉权限场景
任何 ACL 模型中最有趣的部分是角色重叠的地方。这里实现了三个场景:
| # | 规则 | 结果 |
|---|------|--------|
| 1 | `G_Direction` → 对 `RH` **只读** | 管理层审计 HR 但不对其进行修改 |
| 2 | `G_Medecins` → 对 `Finance` **只写** | 医生投放发票,但无法读取该文件夹 |
| 3 | `G_IT` → 到处都是 **FullControl** | IT 部门维护整个树结构,无论所有者是谁 |
## 目录结构
```
hospital-security-iac/
├── scripts/ # Infrastructure as Code (PowerShell)
│ ├── 0-Orchestrator.ps1 # → entry point (install / -ClearAll)
│ ├── 1-Identity.ps1 # → RBAC groups + users (IAM)
│ ├── 2-Infrastructure.ps1 # → folder tree + NTFS ACLs
│ ├── 3-Hardening.ps1 # → lock down cmd / powershell
│ └── Json/ # → sources of truth (data-driven)
│ ├── groupes.json
│ ├── utilisateurs.json
│ └── structure.json
├── soc/ # Real-time SOC dashboard (Go / TUI)
│ ├── main.go
│ └── go.mod
└── docs/ # Full technical dossier (3 parts)
```
## 使用方法
部署整个环境(提升权限的 PowerShell):
```
cd scripts
.\0-Orchestrator.ps1
```
全部回滚 —— 仅移除本项目创建的内容:
```
.\0-Orchestrator.ps1 -ClearAll
```
运行 SOC 仪表板:
```
cd soc
go run .
```
该仪表板提供三个面板 —— **👤 用户**、**👥 组**、**📜 审计跟踪** —— 由异步 goroutine 刷新。在另一个窗口中触发部署,观察账户/组事件(`4720` / `4726` / `4732` / `4733`)实时流入。
## 蓝队工具包的一部分
检测端可与工具包的其余部分完美配合:
- [home-detection-lab](https://github.com/bvlik/home-detection-lab) — Sigma 规则 + MITRE ATT&CK 场景 + 可运行的检测器
- [sigma-rule-pack](https://github.com/bvlik/sigma-rule-pack) — 映射到 MITRE ATT&CK 的精选 Sigma 检测
- [log-triage-toolkit](https://github.com/bvlik/log-triage-toolkit) — 身份验证日志的只读分诊(暴力破解、枚举)
## 亮点
- ✅ 数据驱动的 RBAC、ACL 和强化 —— 整个拓扑结构都存在于 JSON 中
- ✅ 幂等、可重复运行的模块,支持完整的 `-ClearAll` 回滚
- ✅ 三个真实的交叉权限场景(只读 / 只写 / 完全控制)
- ✅ 针对标准用户的命令解释器锁定
- ✅ 实时 Go SOC 仪表板证明每一项更改都已落实到系统中
由 bvlik 构建 —— Windows 安全与蓝队工具。
标签:AI合规, Go语言, Homebrew安装, IPv6, Libemu, PowerShell, Windows系统加固, 安全运营中心, 日志审计, 程序破解, 系统运维, 终端UI, 终端安全, 网络映射