abdul4rehman215/CIS-Top-20-Controls
GitHub: abdul4rehman215/CIS-Top-20-Controls
一套包含30个动手实验的 CIS 对齐防御性安全控制实施作品集,覆盖加固、监控、加密与事件响应等核心蓝队技能。
Stars: 0 | Forks: 0
# 🛡️ CIS Top 20 Controls — 防御性控制措施实施作品集 (30 个实验)
### 一个结构化、以执行为先的 30 个实验作品集,在端点、网络和云系统中实施 **CIS 风格的基线控制** — 包含可重现的步骤、验证证据和文档产出物。
























## 🎯 执行摘要
本代码库展示了在 30 个结构化实验中进行的 **CIS 对齐防御性安全控制** 的动手实践。
它展示了在以下方面的实际能力:
- 资产盘点与暴露验证(硬件/软件核对)
- 漏洞扫描与修复跟踪 (OpenVAS)
- 最小权限原则执行与访问治理
- 端点与网络强化 (Linux + Windows)
- 防火墙与边界防御 (UFW, iptables)
- 日志监控与 SIEM 集成 (ELK, Wazuh)
- 静态加密 (BitLocker, LUKS) 和传输中加密 (TLS/HTTPS)
- 备份、恢复与完整性验证 (diff + 哈希)
- 事件响应生命周期文档记录与遏制概念
- 云实例强化 (OpenStack 安全组)
这是**以执行为先的安全工程**:
运行命令、验证输出、测试控制措施,并按每个实验记录证据。
该作品集反映了与现实 SOC 环境对齐的实用防御操作 —— 而非理论练习。
## 📌 关于本代码库
这是一个结构化的 30 个实验安全工程项目,专注于在以下方面实施基础和操作性防御控制:
- 端点安全
- 网络强化
- 身份与访问治理
- 日志与 SIEM 工作流
- 加密执行
- 备份验证
- 云安全配置
- 事件响应流程执行
所有实验均在使用开源工具的受控 Ubuntu 和 Windows 实验环境中执行。
每个实验包含:
- 命令执行步骤
- 验证输出
- 配置产出物(已脱敏)
- 结构化文档
- 故障排除笔记
进展过程从基线控制(盘点、强化、防火墙)过渡到运营安全(SIEM 集成、加密验证、策略执行)。
## 👤 本代码库面向人群
此作品集专为以下人群设计:
- SOC Analyst (Tier 1 / Tier 2) 角色
- 蓝队与防御性安全学习者
- 系统 / 端点强化工程师
- 初级检测工程候选人
- 希望转型进入网络安全领域的 IT 专业人士
- 评估动手防御能力的招聘人员
它展示了实施、验证和记录真实安全控制的能力 —— 而不仅仅是口头描述。
## 🗂️ 实验索引 (1–30)
# 🗂 实验架构概述
# 🧱 第 1 部分 — 安全基础 (实验 1–15)





| 实验 | 标题 | 重点领域 |
|-----|-------|------------|
| 01 | [硬件资产盘点](./lab01-hardware-asset-inventory) | 资产发现与核对 |
| 02 | [软件资产盘点](./lab02-software-asset-inventory) | 已安装软件审计 |
| 03 | [基础漏洞扫描](./lab03-basic-vulnerability-scanning) | OpenVAS / GVM 扫描 |
| 04 | [受控的管理员权限](./lab04-controlled-use-of-administrative-privileges) | 最小权限原则执行 |
| 05 | [安全端点配置](./lab05-secure-configuration-for-endpoints) | CIS 风格强化 |
| 06 | [审计日志监控与分析](./lab06-monitoring-and-analysis-of-audit-logs) | 日志分类工作流 |
| 07 | [电子邮件与浏览器强化](./lab07-securing-email-and-web-browsers) | 防钓鱼控制 |
| 08 | [恶意软件防御](./lab08-malware-defenses) | ClamAV 验证 |
| 09 | [限制端口与服务](./lab09-limiting-network-ports-protocols-and-services) | UFW + iptables 执行 |
| 10 | [数据恢复能力](./lab10-data-recovery-capabilities) | 备份 + 恢复 + diff 验证 |
| 11 | [网络设备强化](./lab11-secure-configuration-for-network-devices) | 仅限 SSH 管理 |
| 12 | [边界防御](./lab12-boundary-defense) | 入站过滤 + nc 验证 |
| 13 | [数据保护基础](./lab13-data-protection-basics) | TLS + 文件加密 |
| 14 | [需知访问控制](./lab14-controlled-access-need-to-know) | Linux 组与权限 |
| 15 | [无线访问控制](./lab15-wireless-access-control) | WPA2 AES + 禁用 WPS |
## 🧠 展现的技能 (实验 1–15)
- 硬件/软件资产核对
- Nmap 主机发现验证
- OpenVAS 漏洞分类
- 管理员权限审计 (sudo/wheel)
- CIS 风格的端点强化思维
- UFW 与 iptables 规则执行
- 端口/服务最小化
- 备份自动化 (cron) + 完整性验证 (diff)
- 路由器强化(仅限 SSH,禁用 HTTP)
- TLS 证书配置 + 握手验证
- 文件加密验证 (AES-256)
- Linux 访问控制 (chmod/chown/groups)
- 无线安全强化
### 这些实验使用开源工具和验证工作流,在端点和网络中实施了基础的基线控制措施。
# 🔐 第 2 部分 — 安全强化、运营与加密 (实验 16–30)





| 实验 | 标题 | 重点领域 |
|-----|-------|------------|
| 16 | [账户监控与控制](./lab16-account-monitoring-and-control) | UID 审计 + 锁定策略 |
| 17 | [安全意识培训](./lab17-security-awareness-training) | 钓鱼防御培训 |
| 18 | [应用软件安全](./lab18-application-software-security) | SQLi/XSS 缓解 |
| 19 | [事件响应与管理](./lab19-incident-response-and-management) | 事件响应生命周期 |
| 20 | [渗透测试(已授权)](./lab20-penetration-testing-and-red-team-exercises) | Nmap + 修复工作流 |
| 21 | [补丁管理基础](./lab21-patch-management-basics) | 更新验证 |
| 22 | [强化 Windows 系统](./lab22-hardening-windows-system) | 策略执行 |
| 23 | [强化 Linux 系统](./lab23-hardening-linux-system) | SSH 强化 |
| 24 | [SIEM 日志集成 (ELK)](./lab24-siem-integration-for-logs) | Filebeat Elasticsearch |
| 25 | [安全云实例](./lab25-secure-cloud-instance-basic) | OpenStack 安全组 |
| 26 | [端点安全工具入门](./lab26-endpoint-security-tool-introduction) | Wazuh 告警验证 |
| 27 | [静态数据加密](./lab27-data-at-rest-encryption) | BitLocker + LUKS |
| 28 | [传输中数据加密](./lab28-data-in-transit-encryption) | Nginx TLS + 重定向 |
| 29 | [验证备份](./lab29-verifying-backups) | 哈希 + diff 验证 |
| 30 | [加强密码策略](./lab30-strengthening-password-and-account-policies) | pwquality + Windows 策略 |
## 🧠 展现的技能 (实验 16–30)
- 账户审计与会话超时执行
- 基于 PAM 的锁定配置
- 安全意识内容开发
- SQL 注入与 XSS 缓解策略
- 事件生命周期执行(检测 → 遏制 → 恢复)
- 补丁部署与验证工作流
- SSH 强化与服务最小化
- ELK + Filebeat 日志转发
- Wazuh 端点监控验证 (EICAR)
- OpenStack 云安全组
- BitLocker + LUKS 加密
- HTTPS 强制执行(301 重定向)
- 备份完整性验证 (sha256sum)
- 密码复杂度与过期执行
### 这些实验从基线强化扩展到了运营 SOC 控制和加密验证工作流。
## ✅ 验证方式(如何证明证据)
在各实验中,通过以下方式明确展示了验证:
* **事前/事后检查**(端口、服务、策略、配置)
* **否定测试**(未经授权的访问失败,被阻止的端口超时)
* **完整性证明**(diff 输出,SHA256 哈希)
* **安全遥测证明**(认证日志,SIEM 索引,Wazuh 告警)
* **TLS 证明**(`curl -I`,握手/密码确认)
## 🧰 使用的工具与技术
点击展开
### 🖥️ 操作系统 * **Ubuntu 24.04/24.04.1 LTS**(主要实验主机) * **Windows**(盘点导出、策略、加密工具) ### 🌐 网络与发现 * `nmap`, `ss`, `netstat` (net-tools), `ip`, `ip route`, `nc` (netcat) ### 🔎 漏洞与端点安全 * **OpenVAS / Greenbone (GVM)** * **Lynis**(基线审计方法) * **ClamAV** (`freshclam`, `clamscan`) ### 🔥 防火墙与边界控制 * `ufw`, `iptables` (+ 保存/恢复) * 服务管理: `systemctl` ### 📊 日志 / SIEM / 监控 * `rsyslog`, `/var/log/auth.log`, `grep`, `tail` * **Elastic Stack**: Elasticsearch + Kibana * **Filebeat**(日志转发器) * **Wazuh**(管理器/仪表板;端点告警验证) ### 💾 备份 / 恢复 / 完整性 * `tar`, `gzip`, `cron`, `crontab`, `diff`, `sha256sum` ### 🔐 安全访问与加密 * **OpenSSH** (SSH 强化) * **Apache2 TLS** (OpenSSL 证书生成 + TLS 握手验证) * **Nginx TLS** (HTTPS + 重定向) * **BitLocker** (Windows), **LUKS / cryptsetup** (Linux) * Windows 实用程序: **7-Zip AES-256**, **VeraCrypt** ### ☁️ 云安全 * **OpenStack** (Horizon + CLI) * 安全组(严格的入站规则) * MFA 工作流执行标签:CIS控制项, CTI, 安全实验, 库, 应急响应, 应用安全, 系统加固