VikashChoudhary-04/MiniCorp-Red-Team-Simulation
GitHub: VikashChoudhary-04/MiniCorp-Red-Team-Simulation
MiniCorp 是一个在 VMware 上搭建的模拟企业网络实验环境,集基础设施部署、集中式身份管理与结构化内部安全评估于一体。
Stars: 1 | Forks: 0
             
**一个完整的企业网络安全实验环境,演示了基础设施部署、集中式身份管理、Windows 与 Linux 管理以及基于证据的内部安全评估。**
图 1. MiniCorp 企业网络架构。
## 技术栈 ### 基础设施 | 类别 | 技术 | |-----------|------------| | Hypervisor | VMware Workstation | | 域控 | Windows Server 2022 | | 客户端工作站 | Windows 10 | | Linux 服务器 | Ubuntu Server 24.04 LTS | ### 身份与访问管理 | 组件 | 技术 | |-----------|------------| | 目录服务 | Active Directory 域服务 | | 域 | `minicorp.local` | | 身份验证 | Kerberos | | 目录查询 | LDAP | | 授权 | Active Directory 安全组 | | 访问控制 | NTFS 权限和 SMB 共享权限 | | 策略管理 | 组策略 | ### 网络服务 | 服务 | 技术 | |----------|------------| | DNS | Microsoft DNS | | SMB | Microsoft SMB | | 文件共享 | Windows 文件服务 | | 远程管理 | OpenSSH (Ubuntu) | ### Web 平台 | 组件 | 技术 | |-----------|------------| | 操作系统 | Ubuntu Server 24.04 LTS | | Web 服务器 | Apache HTTP Server | | 运行时 | PHP | | 数据库 | MariaDB | | 内容管理系统 | WordPress | ### 评估工具 | 工具 | 用途 | |------|---------| | Nmap | 主机发现、服务检测、端口扫描 | | Nikto | Web 服务器评估 | | Gobuster | 内容和目录枚举 | | curl | 手动 HTTP 检查 | | ldapsearch | LDAP 枚举 | | smbclient | SMB 枚举和验证 | | nslookup | DNS 测试 | | dig | DNS 查询 | ## 基础设施概览 - MiniCorp 环境由通过隔离的虚拟网络连接的三台主要虚拟机组成。每台机器执行专门的企业角色,同时通过标准的 Windows 和 Linux 服务与其他机器进行交互。 | 系统 | 角色 | IP 地址 | |---------|------|------------| | MiniCorp-DC | 域控 | `192.168.192.20` | | MiniCorp-Client | 加入域的工作站 | `192.168.192.30` | | MiniCorp-Ubuntu | Linux Web 服务器 | `192.168.192.40` | ## Windows 域控 - 域控作为企业环境的核心,为所有加入域的系统提供集中式的身份验证、授权、策略执行和名称解析。 ### 已配置的服务 | 服务 | 用途 | |----------|---------| | Active Directory 域服务 | 集中式身份管理 | | DNS | 域名解析 | | LDAP | 目录访问 | | Kerberos | 身份验证 | | SMB | 网络文件共享 | | SYSVOL | 组策略复制 | | NETLOGON | 登录服务 | | 组策略管理 | 集中式策略管理 | ## Active Directory 结构 - Active Directory 的实现模拟了企业环境中常见的部门组织结构。 ### 组织单位 - HR - Finance - IT - Sales - Servers - Workstations ### 安全组 - HR_Users - Finance_Users - Sales_Users - IT_Admins - Domain Admins - Server_Admins - Workstation_Admins ### 示例用户 - Alice Johnson - Bob Smith - Charlie Brown - David Wilson 对企业资源的访问通过 Active Directory 组成员身份结合 NTFS 和 SMB 权限进行控制。 ## Windows 客户端 - Windows 客户端代表一个加入 Active Directory 域的受管企业工作站。 - 该系统用于验证集中管理、身份验证、授权和组策略的执行。 ### 已配置的功能 - 域加入 - 部门用户账户 - 组策略应用 - 驱动器映射 - 基于部门的访问控制 - 注册表限制 | 命令提示符限制 - 控制面板限制 该工作站演示了集中管理如何在受管设备上强制执行一致的安全设置。 ## Ubuntu 服务器 - Ubuntu 服务器代表一台内部托管的 Linux Web 服务器,提供典型的 LAMP 风格的 Web 应用程序环境。 - 它托管了在安全评估期间接受评估的企业 Web 应用程序。 ### 已安装组件 | 组件 | 用途 | |-----------|---------| | Ubuntu Server 24.04 LTS | 操作系统 | | Apache HTTP Server | Web 服务器 | | PHP | 服务端运行时 | | MariaDB | 数据库 | | WordPress | Web 应用程序 | | OpenSSH | 远程管理 | ### 网络配置 - Ubuntu 服务器使用两个网络接口。 | 接口 | 用途 | |-----------|---------| | Host-Only 适配器 | 与 MiniCorp 企业网络通信 | | NAT 适配器 | 为软件包安装和更新提供互联网连接 | 将内部通信与外部连接分开,反映了常见的企业部署模式。 ## 网络设计 - MiniCorp 实验环境使用隔离的 host-only 网络来模拟内部企业通信,同时允许 Ubuntu 服务器通过单独的 NAT 适配器访问互联网,以进行软件安装和维护。 | 网络 | 用途 | |----------|---------| |192.168.192.0/24` | 内部企业网络 | | NAT 网络 | 用于 Ubuntu 更新的互联网访问 | - 这种设计实现了所有虚拟机之间的受控交互,同时保持了与宿主环境的隔离。 ## Active Directory 管理 - 该项目演示了 Active Directory 环境的实际管理,包括用户生命周期管理、组织设计和集中授权。 - 已实施的管理任务包括: - 创建域 - 组织单位管理 - 用户账户创建 - 安全组管理 - 组成员身份管理 - 基于部门的访问控制 - 文件共享授权 - NTFS 权限管理 - 这些任务反映了企业环境中 Windows 管理员通常承担的职责。 ## Windows 管理 - Windows 管理部分侧重于通过组策略和 Active Directory 进行集中管理。 - 已实施的配置包括: - 密码策略 - 账户锁定策略 - 交互式登录横幅 - 驱动器映射 - 注册表限制 - 命令提示符限制 - 控制面板限制 - 基于用户的组策略过滤 - 这些配置演示了企业环境如何在受管工作站上一致地强制执行安全策略。 ## Linux 管理 - Linux 管理部分侧重于部署和维护生产环境的 Web 服务器。 - 管理任务包括: - Ubuntu Server 安装 - 静态网络配置 - Apache 部署 - MariaDB 安装 - WordPress 部署 - OpenSSH 配置 - 软件包管理 - 服务管理 - 这些任务提供了在企业环境中部署和维护 Linux 服务器的实践经验。 ## 安全配置 - MiniCorp 环境纳入了多种安全控制措施,展示了集中化管理和企业访问管理。实施这些控制是为了模拟常见的组织安全策略,同时在安全评估期间提供一个真实的验证环境。 ### 身份与访问管理 - 身份验证和授权通过 Active Directory 域服务进行集中管理。 - 已实施的控制包括: - 集中式用户身份验证 - 基于部门的授权 - 安全组管理 - 组织单位 (OU) 分离 - 基于角色的访问控制 - 集中化账户管理 ### 组策略 - 组策略用于在加入域的系统中强制执行一致的配置。 - 已实施的策略包括: | 策略 | 用途 | |----------|---------| | 密码策略 | 强制密码复杂度和长度 | | 账户锁定策略 | 减轻密码猜测攻击 | | 交互式登录横幅 | 显示组织安全通知 | | 驱动器映射 | 自动映射部门网络共享 | | 注册表限制 | 防止未经授权的注册表修改 | | 命令提示符限制 | 限制对命令解释器的访问 | | 控制面板限制 | 限制对系统配置的访问 | | 基于用户的过滤 | 将策略应用于特定的安全组 | ### 文件共享与授权 - 部门资源使用 SMB 进行共享,而授权则通过以下各项的组合来强制执行: - Active Directory 安全组 - SMB 共享权限 - NTFS 权限 - 这种分层方法确保用户只能访问明确分配给其部门角色的资源。 ### 网络服务 - 核心企业服务包括: | 服务 | 用途 | |----------|---------| | DNS | 名称解析 | | LDAP | 目录查询 | | Kerberos | 身份验证 | | SMB | 文件共享 | | 组策略 | 集中化配置 | - 这些服务共同构成了企业身份管理和行政的基础。 ## 评估方法论 - 在基础设施部署之后,对 MiniCorp 环境执行了结构化的内部安全评估。 - 该评估侧重于验证服务配置、识别暴露的攻击面、验证授权控制,并记录基于证据的观察结果。 ## 评估范围 ### 已评估系统 | 系统 | 评估领域 | |----------|------------------| | MiniCorp-DC | DNS, LDAP, SMB, Active Directory 服务 | | MiniCorp-Client | 组策略、访问控制验证 | | MiniCorp-Ubuntu | Apache, WordPress, Web 服务器配置 | ### 评估目标 - 本次评估旨在: - 识别暴露的网络服务。 - 验证 Active Directory 功能。 - 验证 DNS 操作。 - 评估 LDAP 可访问性。 - 验证 SMB 授权。 - 审查 Web 服务器配置。 - 评估已部署的 WordPress 应用程序。 - 记录观察结果和建议。 ## 评估工作流 - 该评估遵循结构化的工作流,旨在从发现阶段进展到验证和报告阶段。 ``` Infrastructure Verification │ ▼ Host Discovery │ ▼ Service Enumeration │ ▼ DNS Assessment │ ▼ LDAP Assessment │ ▼ SMB Assessment │ ▼ Web Server Assessment │ ▼ WordPress Assessment │ ▼ Configuration Review │ ▼ Evidence Collection │ ▼ Security Findings │ ▼ Hardening Recommendations ``` ## 评估工具 | 工具 | 主要用途 | |------|-------------| | Nmap | 主机发现和服务枚举 | | Nikto | Web 服务器评估 | | Gobuster | 目录枚举 | | curl | HTTP 检查 | | ldapsearch | LDAP 枚举 | | smbclient | SMB 验证 | | nslookup | DNS 解析测试 | | dig | DNS 查询 | ## 网络枚举 - 评估从整个 MiniCorp 环境中的主机发现和服务识别开始。 - 对已知的企业系统进行了单独评估,以识别暴露的服务并验证预期功能。 ### 枚举到的主机 | 主机 | 操作系统 | 角色 | |------|------------------|------| | MiniCorp-DC | Windows Server 2022 | 域控 | | MiniCorp-Client | Windows 10 | 域工作站 | | MiniCorp-Ubuntu | Ubuntu Server 24.04 LTS | Web 服务器 | ## 服务验证 - 枚举确认了服务与每个系统的预期角色保持一致。 ### MiniCorp-DC - 观察到的企业服务包括: - DNS - Kerberos - LDAP - SMB - 全局目录 - Microsoft RPC - WinRM ### MiniCorp-Ubuntu - 观察到的服务包括: - SSH - HTTP - 在评估期间未发现意外的服务。 ## DNS 评估 - 评估验证了 Active Directory 集成 DNS 服务的运行。 - 验证包括: - 域名解析 - 正向查找测试 - 权威响应 - 内部名称解析 - 评估确认了 Active Directory 域的成功解析和预期的 DNS 行为。 ## LDAP 评估 - 使用标准的域凭据执行了经过身份验证的 LDAP 查询。 - 评估验证了对预期目录信息的访问,包括: - 用户对象 - 安全组 - 组织单位 - 可分辨名称 - 命名上下文 - 这演示了经过身份验证的域用户可用的信息,同时验证了目录功能。 ## SMB 评估 - SMB 测试的重点是验证部门授权,而不是识别配置错误。 - 经过身份验证的访问确认了共享权限与 Active Directory 组成员身份保持一致。 ### 验证示例 | 共享 | HR 用户 | |---------|:------:| | HR | ✅ | | Public | ✅ | | Finance | ❌ | | IT | ❌ | - 这确认了以下各项的正确实施: - 基于部门的授权 - SMB 共享权限 - NTFS 权限 - Active Directory 安全组 ## Web 应用程序评估 - Ubuntu 服务器托管了部署在 Apache 和 MariaDB 上的 WordPress 应用程序。 - 评估侧重于: - Web 服务器识别 - HTTP 响应检查 - 内容发现 - 默认端点验证 - 配置审查 ### 识别出的技术 | 组件 | 技术 | |------------|------------| | 操作系统 | Ubuntu Server | | Web 服务器 | Apache HTTP Server | | 运行时 | PHP | | 数据库 | MariaDB | | CMS | WordPress | ### HTTP 审查 - 手动 HTTP 检查确认了: - 成功的 HTTP 响应 - 标准的 Apache 行为 - WordPress 应用程序部署 - 预期的管理端点 - 在配置审查期间还发现了 Apache `server-status` 端点,并将其作为安全观察结果记录下来。 ## 评估总结 - 评估成功验证了 MiniCorp 环境的预期运行,同时记录了配置观察结果和授权行为。 | 评估领域 | 状态 | |-----------------|:------:| | 网络枚举 | ✅ | | 服务识别 | ✅ | | DNS 验证 | ✅ | | LDAP 验证 | ✅ | | SMB 授权验证 | ✅ | | 组策略验证 | ✅ | | Web 服务器评估 | ✅ | | WordPress 评估 | ✅ | | 配置审查 | ✅ | | 证据收集 | ✅ | - 评估表明,该企业环境按照设计正常运行,同时提供了评估常见管理服务和安全配置的真实机会。 ### 关键发现 - 安全评估发现了若干与服务配置、应用程序暴露和企业安全态势相关的观察结果。除非另有说明,所有发现均在隔离的 MiniCorp 实验室环境中识别得出。 | ID | 发现 | 严重性 | 状态 | |----|----------|:--------:|:------:| | MC-001 | Apache `server-status` 端点可访问 | 低 | 已记录 | | MC-002 | WordPress 管理界面暴露 | 信息提示 | 已记录 | | MC-003 | WordPress XML-RPC 端点可用 | 信息提示 | 已记录 | | MC-004 | 部门 SMB 授权按预期运行 | 积极 | 已验证 | | MC-005 | Active Directory 集成 DNS 运行正常 | 积极 | 已验证 | | MC-006 | 可进行经过身份验证的 LDAP 目录枚举 | 信息提示 | 已记录 | ## 加固要点 - 评估最后提出了若干建议,以在保留功能的同时改善环境的安全态势。 ### Windows 基础设施 - 对管理账户应用最小权限原则。 - 定期审查 Active Directory 组成员身份。 - 审核委派的权限。 - 启用针对身份验证和策略更改的高级审核。 - 监控特权账户活动。 ### 组策略 - 定期审查所有组策略对象 (GPO)。 - 验证安全过滤。 - 删除过时的策略。 - 在生产部署之前测试策略更改。 ### SMB - 定期审核共享权限。 - 审查 NTFS 权限。 - 删除不必要的共享文件夹。 - 在适当的情况下启用 SMB 签名。 ### Linux 服务器 - 限制对 Apache 管理端点的访问。 - 保持操作系统软件包更新。 - 监控 Apache 和身份验证日志。 - 限制 SSH 仅允许授权管理员访问。 ### WordPress - 启用自动更新。 - 移除未使用的插件和主题。 - 强制管理员使用高强度密码。 - 在适当的情况下启用多因素身份验证。 - 如果不需要,请禁用 XML-RPC。 ## MITRE ATT&CK 映射 - 评估活动可以映射到相关的 MITRE ATT&CK 技术,以提供防御上下文。 | 评估活动 | ATT&CK 技术 | |---------------------|------------------| | 网络服务发现 | T1046 | | 系统网络配置发现 | T1016 | | 远程系统发现 | T1018 | | 账户发现 | T1087 | | 文件和目录发现 | T1083 | | 网络共享发现 | T1135 | | 主动扫描 | T1595 | ## 展示的技能 | 领域 | 技能 | |----------|---------| | 企业基础设施 | VMware Workstation, Windows Server 2022, Windows 10, Ubuntu Server | | Windows 管理 | Active Directory, ADUC, 组织单位, 安全组 | | 身份与访问管理 | Kerberos, LDAP, 组成员身份, 基于角色的访问控制 | | 组策略 | 密码策略, 账户锁定, 驱动器映射, 用户限制 | | 文件服务 | SMB, NTFS 权限, 部门共享 | | Linux 管理 | Apache, PHP, MariaDB, WordPress, OpenSSH | | 网络 | DNS, LDAP, SMB, TCP/IP, HTTP | | 安全评估 | 枚举, 配置审查, 授权验证 | | 文档撰写 | 技术写作, 证据收集, 发现, 建议 | ## 项目统计 | 指标 | 数值 | |---------|------:| | 虚拟机 | 3 | | 操作系统 | 3 | | Active Directory 域 | 1 | | 组织单位 | 6 | | 安全组 | 7+ | | 部门用户 | 4 | | SMB 共享 | 多个 | | 核心基础设施服务 | 5 | | 使用的评估工具 | 8 | | 评估领域 | 9 | | 记录的发现 | 6 | ## 仓库结构 ``` MiniCorp/ │ ├── README.md ├── LICENSE ├── .gitignore │ ├── docs/ ├── diagrams/ ├── screenshots/ ├── evidence/ ├── reports/ ├── scripts/ └── resources/ ``` - 项目文档中提供了对每个目录的完整说明。 ## 文档指南 | 文档 | 描述 | |----------|-------------| | `01-project-overview.md` | 项目目标、范围和学习目标 | | `02-lab-architecture.md` | 企业架构和网络设计 | | `03-active-directory.md` | Active Directory 实施 | | `04-linux-server.md` | Ubuntu Server 部署和 Web 技术栈 | | `05-network-services.md` | DNS、LDAP、SMB 和支持性服务 | | `06-group-policy.md` | 组策略实施 | | `07-security-assessment.md` | 评估方法论与执行 | | `08-findings.md` |发现和证据 | | `09-hardening-recommendations.md` | 安全改进建议 | | `10-mitre-attack-mapping.md` | MITRE ATT&CK 映射 | | `11-lessons-learned.md` | 关键项目收获 | ## 未来改进 - 潜在的未来增强功能包括: - Windows 事件转发 - Sysmon 部署 - Microsoft Defender 集成 - Wazuh 集成 - SIEM 日志收集 - 额外的 Linux 服务器 - Active Directory 证书服务 - 内部 PKI - IIS 部署 - 自动化合规性审核 - 基础设施即代码 部署 - 这些增强功能被有意列为未来工作,**不**属于当前实施的一部分。 ## 经验教训 - 构建 MiniCorp 强化了将基础设施部署、集中化管理和结构化安全评估整合到单一工作流程中的重要性。 - 该项目提供了在企业身份管理、Windows 管理、Linux 服务器部署、网络服务、访问控制和技术报告方面的实践经验。它还展示了以清晰且可重现的方式记录证据、验证观察结果和提出建议的价值。 - 也许最重要的收获是认识到:有效的安全评估不仅取决于技术测试,还取决于准确的文档记录和有充分依据的结论。 ## 道德声明 - 该项目完全在私有的实验室环境中进行设计、部署、管理和评估。 - 在创建此仓库期间,未针对任何第三方基础设施、组织或个人。 - 本项目中记录的技术仅用于: - 授权的安全评估 - 企业管理培训 - 防御性安全验证 - 网络安全教育 - 受控环境内的研究 - 在对您不拥有或不管理的系统进行评估之前,请务必获得明确的授权。 ## 许可证 - 该项目在 **MIT License** 下授权。 - 有关完整的许可证文本,请参阅 [LICENSE](LICENSE) 文件。