内网渗透中的权限提升技术与防御策略
1. 内网渗透中的权限提升概述
权限提升是内网渗透过程中最关键的环节之一,也是区分脚本小子和专业安全人员的重要分水岭。在内网环境中,攻击者初始获取的往往只是普通用户权限,而真正的目标通常是获取域管理员或系统管理员权限。权限提升技术本质上是通过利用系统配置缺陷、软件漏洞或逻辑错误,从低权限账户获取更高权限账户的控制权。
在实际渗透测试中,我发现权限提升主要分为两大类:纵向提权(从普通用户到管理员)和横向移动(从一个普通用户到另一个普通用户)。前者直接提升权限级别,后者则是通过扩大控制范围间接获取更高权限。这两种方式往往需要结合使用,才能最终达成控制整个内网的目标。
2. 常见权限提升技术分类与原理
2.1 系统配置不当导致的提权
Windows系统中,最常见的配置问题包括:
- 服务路径漏洞:当服务以SYSTEM权限运行但指向用户可写的目录时
- 不安全的服务权限:用户可以修改服务配置或停止/启动服务
- 计划任务配置错误:用户可修改计划任务执行的程序或脚本
Linux系统中则常见:
- SUID/SGID设置不当:普通用户可执行高权限程序
- /etc/passwd或/etc/shadow文件权限设置错误
- cron任务配置不当导致命令注入
提示:在内网渗透中,我总是优先检查这些配置问题,因为它们不依赖特定漏洞,成功率较高且不易被防护设备检测到。
2.2 内核与系统漏洞利用
当配置检查无法直接提权时,我会转向漏洞利用。Windows系统中值得关注的包括:
- MS16-075(烂土豆):通过命名管道模拟漏洞提权
- CVE-2018-8120:Win32k组件空指针引用漏洞
- CVE-2019-0808:Win32k特权提升漏洞
Linux系统中常见的有:
- Dirty Cow(CVE-2016-5195):内存竞争条件漏洞
- Sudo漏洞(CVE-2021-3156):堆溢出漏洞
- Polkit漏洞(CVE-2021-4034):环境变量注入漏洞
2.3 凭证窃取与滥用
在内网环境中,凭证往往比漏洞更有价值。我常用的技术包括:
- 内存dump提取明文密码(mimikatz)
- 破解SAM/SYSTEM注册表文件
- 嗅探网络流量获取NTLM哈希
- 滥用Windows凭据管理器
- 查找配置文件中的硬编码凭证
3. 实战中的权限提升流程
3.1 信息收集阶段
在获取初始立足点后,我会系统性地收集以下信息:
systeminfo # 获取系统详细信息 whoami /priv # 查看当前用户权限 net user /domain # 枚举域用户 tasklist /svc # 查看运行的服务 schtasks /query /fo LIST /v # 查看计划任务3.2 自动化工具辅助分析
我通常会使用以下工具快速识别潜在的提权路径:
- Windows: WinPEAS, PowerUp, Seatbelt
- Linux: LinPEAS, LinEnum, Linux Exploit Suggester
- 跨平台: Metasploit的post模块
这些工具能自动检测系统配置问题、安装的软件版本和已知漏洞,大幅提高效率。
3.3 针对性利用与验证
根据收集的信息,我会:
- 优先尝试无需漏洞的配置错误提权
- 检查内核版本与公开漏洞匹配情况
- 测试凭证重用和横向移动可能性
- 验证提权成功后立即备份凭证和权限
4. 高级权限维持技术
4.1 黄金票据与白银票据
在域环境中,获取krbtgt账户的哈希后可以创建黄金票据,获得任意服务的访问权限。而白银票据则针对特定服务,不需要与KDC交互。
4.2 影子账户与DSRM密码
创建隐藏的管理员账户或修改目录服务恢复模式(DSRM)密码,可以在常规管理员账户被重置后仍保持访问权限。
4.3 计划任务与WMI事件订阅
通过创建高权限的计划任务或WMI永久事件订阅,可以在系统重启后自动恢复控制权。
5. 防御与检测建议
作为渗透测试人员,了解防御措施同样重要。企业可以采取以下措施:
5.1 权限最小化原则
- 严格遵循最小权限原则分配账户权限
- 定期审计用户权限和服务账户
- 禁用不必要的系统功能和组件
5.2 系统加固措施
- 及时安装安全补丁
- 配置AppLocker或软件限制策略
- 启用LSA保护和Credential Guard
5.3 监控与检测
- 监控异常账户活动(如夜间登录)
- 检测mimikatz等工具的使用痕迹
- 分析异常服务创建和计划任务
在实际渗透测试项目中,我发现大多数内网渗透最终都依赖于权限提升技术。不同于边界突破的"一次性"攻击,权限提升往往需要多次尝试和组合多种技术。最有效的攻击者不是那些掌握最多漏洞的人,而是最了解系统运作原理和防御盲点的人。
在最近的一次红队演练中,我通过组合服务路径漏洞、凭证重用和WMI事件订阅,成功在高度防护的域环境中建立了持久控制。整个过程没有使用任何0day漏洞,全是依靠对系统机制的深入理解和耐心测试。这再次证明,内网安全最薄弱的环节往往不是技术本身,而是人与配置的疏忽。