域渗透基本概念
字数 3705 2025-08-15 21:32:28

域渗透基础知识详解

0x01 内网基础概念

内网(LAN)

  • 内网即局域网,内部机器IP通常为192.168.x.x等私有地址
  • 内网机器通过NAT访问外网时,对外显示同一公网IP

工作组(Workgroup)

  • 局域网中的逻辑分组,用于对主机和用户进行分类管理
  • 工作组凭证存储在本地,可通过"此电脑"属性查看和修改
  • 适用于小型网络环境,管理分散

0x02 域(Domain)基础

域的定义

  • 域是Windows网络中独立运行的安全单位
  • 域之间通过信任关系(Trust Relation)实现资源共享
  • 域是Windows网络操作系统的逻辑组织单元和安全边界

域与工作组的区别

特性 工作组
管理方式 分散管理 集中管理
认证方式 本地SAM验证 域控制器Kerberos验证
策略设置 本地设置 域控制器统一设置
账号管理 本地管理 域内任意计算机可登录

0x03 域控制器(Domain Controller, DC)

域控制器功能

  • 负责验证域内计算机和用户的合法性
  • 存储域账户、密码、计算机等信息构成的数据库
  • 拒绝非法登录,保护网络资源安全

域控制器特点

  • 安装活动目录(AD)的计算机成为域控制器
  • 一个域可有多台域控制器,通常配置主辅域控
  • 域控是活动目录的存储位置

0x04 活动目录(Active Directory, AD)

AD基本概念

  • 基于DNS的树状结构目录服务
  • 存储域内所有网络对象信息(用户、组、计算机等)
  • 包含域用户和计算机账户的密码哈希值

AD功能

  • 提供基础网络服务(DNS/DHCP等)
  • 集中管理计算机、用户、资源
  • 支持桌面配置和应用系统

AD数据库

  • 数据库文件: ntds.dit
  • 存储位置: c:\windows\system32\ntds\ntds.dit

0x05 域逻辑结构

域(Domain)

  • 安全的最小边界
  • 实现对网络资源的集中统一管理

域树(Domain Tree)

  • 由一组具有连续命名空间的域组成
  • 例如: contoso.com(根域) → gsd.contoso.com(子域) → dev.gsd.contoso.com(子子域)

林(Forest)

  • 由一棵或多棵域树组成
  • 每棵域树有独立命名空间
  • 第一棵域树的根域也是林的根域

组织单元(OU)

  • 容器对象,可包含用户、计算机等对象
  • 也可包含其他OU,实现层级管理

0x06 安全账户管理器(SAM)

SAM概述

  • 存储Windows本地账户密码的数据库文件
  • 存储密码的Hash值(LM Hash和NTLM Hash)
  • 文件位置: c:/windows/system32/config/SAM

SAM安全特性

  • 后期Windows系统使用SYSKEY加密SAM文件
  • 类似于Linux的/etc/shadow文件

Hash获取方法

  1. 导出SAM文件配合SYSKEY
  2. 使用mimikatz等工具读取进程内存
  3. 通过PE系统替换SAM文件(老版本系统)

Hash破解工具

  • LM Hash: john/hashcat -m 3000
  • NTLM Hash: john/hashcat -m 1000
  • Net-NTLMv1: john/hashcat -m 5500
  • Net-NTLMv2: john/hashcat -m 5600

0x07 Kerberos协议

Kerberos角色

  1. 客户端(Client)
  2. 服务端(Server)
  3. 密钥分发中心(KDC)

Kerberos认证流程

  1. AS_REQ: 客户端向KDC发起认证请求
  2. AS_REP: KDC验证身份后返回TGT
  3. TGS_REQ: 客户端用TGT请求服务票据
  4. TGS_REP: KDC返回服务票据(ST)
  5. AP_REQ: 客户端用ST请求服务
  6. AP_REP: 服务端验证客户端身份

关键概念

  • TGT(Ticket Granting Ticket): 认证票据
  • ST(Service Ticket): 服务票据
  • PAC(Privilege Attribute Certificate): 特权属性证书,用于权限判断

0x08 NTLM协议

NTLM认证流程

  1. 客户端发送明文用户名
  2. 服务器返回Challenge(挑战值)
  3. 客户端用密码Hash加密Challenge并返回
  4. 服务器向DC验证响应
  5. DC返回验证结果

NTLM Hash类型

  1. NTLM Hash: SAM或ntds.dit中存储的Hash
    • 生成流程: 16进制 → unicode → MD4
  2. Net-NTLM Hash: 认证过程中服务器返回的Hash
    • 包含用户名、IP、加密算法等信息

NTLM Hash获取方式

  1. 导出SAM文件
  2. 使用mimikatz读取内存(受版本限制)
  3. NTLM哈希传递攻击

Net-NTLM Hash获取

  • 使用Responder或Inveigh等工具进行中间人攻击

0x09 SMB协议

SMB概述

  • 服务器消息块(Server Message Block)
  • 又称网络文件共享系统(CIFS)
  • 用于共享文件、打印机、串口等资源

SMB端口

  1. 直接运行在TCP 445端口
  2. 通过NetBIOS API:
    • UDP 137, 138
    • TCP 137, 139

0x0A IPC$

IPC$基础

  • 进程间通信(Inter-Process Communication)
  • 通过命名管道实现远程管理和资源共享
  • 基于SMB和NetBIOS,使用139/445端口

IPC$操作命令

  1. 建立空连接: net use \\ip\ipc$ "" /user:""
  2. 删除连接: net use \\ip\ipc$ /del
  3. 查看共享: net view \\ip
  4. 映射磁盘: net use z: \\ip\c$

IPC$安全

  • 所有操作都会在日志中留下记录
  • 现代系统已限制空连接的权限

0x0B NetBIOS

NetBIOS服务

  1. 名称服务(NetBIOS-NS): UDP 137
  2. 数据报服务: UDP 138
  3. 会话服务: TCP 139

NetBIOS发现工具

  1. nbtstat -A ip: 获取目标MAC地址
  2. nbtscan: 扫描网段主机名和共享

0x0C WMI

WMI概述

  • Windows管理规范(Windows Management Instrumentation)
  • 提供访问操作系统构成单元的公共接口
  • 默认使用135端口(DCOM)

WMI用途

  • 本地和远程计算机管理
  • 渗透测试中常用于远程执行操作
  • 相关工具: WMIC、Invoke-WmiCommand等

0x0D Windows访问令牌

令牌类型

  1. 主令牌: 与进程关联
  2. 模拟令牌: 与线程关联

令牌特点

  • 包含登录会话的安全信息(SID等)
  • 用户注销后主令牌转为模拟令牌
  • 只有重启系统才会清除令牌

0x0E SID

SID概述

  • 安全标识符(Security Identifier)
  • 唯一标识用户、组和计算机账户
  • 账户创建时分配,永不更改

0x0F 虚拟安全域

安全域划分

  1. DMZ区: 对外提供服务的服务器(Web、邮件等)
  2. 内网区:
    • 办公区: 普通员工区域
    • 核心区: 运维和IT主管区域

安全域隔离

  • 通过防火墙设备实现区域隔离
  • 不同区域配置不同安全策略

0x10 堡垒机

堡垒机功能

  1. 限制登录入口
  2. 集中权限账号管理
  3. 命令阻断和审计
  4. 操作记录和追责

与防火墙区别

  • 防火墙: 外网↔DMZ↔内网
  • 堡垒机: 运维人员↔内网

0x11 域中计算机分类

  1. 域控制器: 安装AD的服务器
  2. 成员服务器: 加入域但未安装AD(如Web服务器)
  3. 独立服务器: 未加入域也未安装AD
  4. 客户机: 使用资源的计算机

0x12 域内权限

域内置组类型

  1. 域本地组: 规定域内资源访问权限
  2. 全局组: 用于组织相同安全需求的用户
  3. 通用组: 林范围内跨域访问资源

A-G-DL-P策略

  1. A(Account): 用户账号
  2. G(Global Group): 全局组
  3. DL(Domain Local Group): 域本地组
  4. P(Permission): 资源权限

重要域本地组

  1. Administrators: 最高权限
  2. Remote Desktop Users: 远程登录权限
  3. Print Operators: 管理打印机,可登录域控
  4. Account Operators: 创建管理用户和组
  5. Server Operators: 管理域服务器
  6. Backup Operators: 备份还原操作

重要全局/通用组

  1. Domain Admins: 域管理员,默认加入每台域成员计算机管理员组
  2. Enterprise Admins: 企业系统管理员,域森林每个域的管理员
  3. Schema Admins: 架构管理员,可修改AD和域森林模式
  4. Domain Users: 所有域成员所在组
域渗透基础知识详解 0x01 内网基础概念 内网(LAN) 内网即局域网,内部机器IP通常为192.168.x.x等私有地址 内网机器通过NAT访问外网时,对外显示同一公网IP 工作组(Workgroup) 局域网中的逻辑分组,用于对主机和用户进行分类管理 工作组凭证存储在本地,可通过"此电脑"属性查看和修改 适用于小型网络环境,管理分散 0x02 域(Domain)基础 域的定义 域是Windows网络中独立运行的安全单位 域之间通过信任关系(Trust Relation)实现资源共享 域是Windows网络操作系统的逻辑组织单元和安全边界 域与工作组的区别 | 特性 | 工作组 | 域 | |------|--------|-----| | 管理方式 | 分散管理 | 集中管理 | | 认证方式 | 本地SAM验证 | 域控制器Kerberos验证 | | 策略设置 | 本地设置 | 域控制器统一设置 | | 账号管理 | 本地管理 | 域内任意计算机可登录 | 0x03 域控制器(Domain Controller, DC) 域控制器功能 负责验证域内计算机和用户的合法性 存储域账户、密码、计算机等信息构成的数据库 拒绝非法登录,保护网络资源安全 域控制器特点 安装活动目录(AD)的计算机成为域控制器 一个域可有多台域控制器,通常配置主辅域控 域控是活动目录的存储位置 0x04 活动目录(Active Directory, AD) AD基本概念 基于DNS的树状结构目录服务 存储域内所有网络对象信息(用户、组、计算机等) 包含域用户和计算机账户的密码哈希值 AD功能 提供基础网络服务(DNS/DHCP等) 集中管理计算机、用户、资源 支持桌面配置和应用系统 AD数据库 数据库文件: ntds.dit 存储位置: c:\windows\system32\ntds\ntds.dit 0x05 域逻辑结构 域(Domain) 安全的最小边界 实现对网络资源的集中统一管理 域树(Domain Tree) 由一组具有连续命名空间的域组成 例如: contoso.com(根域) → gsd.contoso.com(子域) → dev.gsd.contoso.com(子子域) 林(Forest) 由一棵或多棵域树组成 每棵域树有独立命名空间 第一棵域树的根域也是林的根域 组织单元(OU) 容器对象,可包含用户、计算机等对象 也可包含其他OU,实现层级管理 0x06 安全账户管理器(SAM) SAM概述 存储Windows本地账户密码的数据库文件 存储密码的Hash值(LM Hash和NTLM Hash) 文件位置: c:/windows/system32/config/SAM SAM安全特性 后期Windows系统使用SYSKEY加密SAM文件 类似于Linux的/etc/shadow文件 Hash获取方法 导出SAM文件配合SYSKEY 使用mimikatz等工具读取进程内存 通过PE系统替换SAM文件(老版本系统) Hash破解工具 LM Hash: john/hashcat -m 3000 NTLM Hash: john/hashcat -m 1000 Net-NTLMv1: john/hashcat -m 5500 Net-NTLMv2: john/hashcat -m 5600 0x07 Kerberos协议 Kerberos角色 客户端(Client) 服务端(Server) 密钥分发中心(KDC) Kerberos认证流程 AS_ REQ : 客户端向KDC发起认证请求 AS_ REP : KDC验证身份后返回TGT TGS_ REQ : 客户端用TGT请求服务票据 TGS_ REP : KDC返回服务票据(ST) AP_ REQ : 客户端用ST请求服务 AP_ REP : 服务端验证客户端身份 关键概念 TGT (Ticket Granting Ticket): 认证票据 ST (Service Ticket): 服务票据 PAC (Privilege Attribute Certificate): 特权属性证书,用于权限判断 0x08 NTLM协议 NTLM认证流程 客户端发送明文用户名 服务器返回Challenge(挑战值) 客户端用密码Hash加密Challenge并返回 服务器向DC验证响应 DC返回验证结果 NTLM Hash类型 NTLM Hash : SAM或ntds.dit中存储的Hash 生成流程: 16进制 → unicode → MD4 Net-NTLM Hash : 认证过程中服务器返回的Hash 包含用户名、IP、加密算法等信息 NTLM Hash获取方式 导出SAM文件 使用mimikatz读取内存(受版本限制) NTLM哈希传递攻击 Net-NTLM Hash获取 使用Responder或Inveigh等工具进行中间人攻击 0x09 SMB协议 SMB概述 服务器消息块(Server Message Block) 又称网络文件共享系统(CIFS) 用于共享文件、打印机、串口等资源 SMB端口 直接运行在TCP 445端口 通过NetBIOS API: UDP 137, 138 TCP 137, 139 0x0A IPC$ IPC$基础 进程间通信(Inter-Process Communication) 通过命名管道实现远程管理和资源共享 基于SMB和NetBIOS,使用139/445端口 IPC$操作命令 建立空连接: net use \\ip\ipc$ "" /user:"" 删除连接: net use \\ip\ipc$ /del 查看共享: net view \\ip 映射磁盘: net use z: \\ip\c$ IPC$安全 所有操作都会在日志中留下记录 现代系统已限制空连接的权限 0x0B NetBIOS NetBIOS服务 名称服务 (NetBIOS-NS): UDP 137 数据报服务 : UDP 138 会话服务 : TCP 139 NetBIOS发现工具 nbtstat -A ip : 获取目标MAC地址 nbtscan : 扫描网段主机名和共享 0x0C WMI WMI概述 Windows管理规范(Windows Management Instrumentation) 提供访问操作系统构成单元的公共接口 默认使用135端口(DCOM) WMI用途 本地和远程计算机管理 渗透测试中常用于远程执行操作 相关工具: WMIC、Invoke-WmiCommand等 0x0D Windows访问令牌 令牌类型 主令牌 : 与进程关联 模拟令牌 : 与线程关联 令牌特点 包含登录会话的安全信息(SID等) 用户注销后主令牌转为模拟令牌 只有重启系统才会清除令牌 0x0E SID SID概述 安全标识符(Security Identifier) 唯一标识用户、组和计算机账户 账户创建时分配,永不更改 0x0F 虚拟安全域 安全域划分 DMZ区 : 对外提供服务的服务器(Web、邮件等) 内网区 : 办公区: 普通员工区域 核心区: 运维和IT主管区域 安全域隔离 通过防火墙设备实现区域隔离 不同区域配置不同安全策略 0x10 堡垒机 堡垒机功能 限制登录入口 集中权限账号管理 命令阻断和审计 操作记录和追责 与防火墙区别 防火墙: 外网↔DMZ↔内网 堡垒机: 运维人员↔内网 0x11 域中计算机分类 域控制器 : 安装AD的服务器 成员服务器 : 加入域但未安装AD(如Web服务器) 独立服务器 : 未加入域也未安装AD 客户机 : 使用资源的计算机 0x12 域内权限 域内置组类型 域本地组 : 规定域内资源访问权限 全局组 : 用于组织相同安全需求的用户 通用组 : 林范围内跨域访问资源 A-G-DL-P策略 A (Account): 用户账号 G (Global Group): 全局组 DL (Domain Local Group): 域本地组 P (Permission): 资源权限 重要域本地组 Administrators : 最高权限 Remote Desktop Users : 远程登录权限 Print Operators : 管理打印机,可登录域控 Account Operators : 创建管理用户和组 Server Operators : 管理域服务器 Backup Operators : 备份还原操作 重要全局/通用组 Domain Admins : 域管理员,默认加入每台域成员计算机管理员组 Enterprise Admins : 企业系统管理员,域森林每个域的管理员 Schema Admins : 架构管理员,可修改AD和域森林模式 Domain Users : 所有域成员所在组