Evilbox-One靶场练习--中低
0x00部署
Evilbox靶机:下载地址
宿主机:kali2022
kali找不到靶机可以参考:kali与靶机网络配置问题
0x01信息收集
1.主机发现

2.端口扫描

3.信息收集(路径扫描)
查看服务以及版本号:

访问一下80端口,没什么信息,对目录进行扫描

secret页面:空的,查看源码也空


扫描之后得到一个evil.php页面,打开也是空的:

利用是php格式,猜测页面是否存在文件包含漏洞,然后再利用远程包含上传webshell进行提权的思路,测试一下。
0x02漏洞挖掘
1.文件包含
利用ffuf来进行模糊匹配,前一个字典用来匹配参数关键字,后一个字典自己定义用来匹配执行,结果是啥也没匹配到,考虑换一个思路,-fs 0是将返回页面为0的页面过滤掉
ffuf -w /usr/share/seclists/Discovery/Web-Content/burp-parameter-names.txt:PARAM -w val.txt:VAL -u http://ip/secret/evil.php?PARAM=VAL -fs 0

之前扫描已知ip根目录下存在一个index.html页面,所以对这个页面进行包含,然后仅匹配参数关键字部分,这里参数可以用FUZZ模糊查询代替
ffuf -w /usr/share/seclists/Discovery/Web-Content/burp-parameter-names.txt -u http://ip/secret/evil.php?FUZZ=../index.html -fs 0

得到文件包含参数为command,使用command参数去evil页面包含一下本地/etc/passwd目录,得到用户名等账号信息。

对信息进行检查中得到除root外用户名mowree具有bash权限

利用mowree用户名进行一下ssh连接,使用-v来指定其详细信息,看是否存在其他认证方式:

利用文件包含来尝试访问一下mowree用户目录下的.ssh目录下是否存在公钥
默认公钥存放位置:/home/用户名/.ssh/authorized_keys

再尝试查看私钥文件:/home/用户名/.ssh/id_rsa,

使用用户名及私钥进行ssh连接发现私钥被加密了,还需要一个密码

这里的思路是使用john对获取到的私钥利用rockyou字典进行暴力破解,现将私钥转化成hash文件,再对hash进行匹配。查找密码
首次使用john目录下的ssh2john对id_rsa进行hash转换

回到本地目录对hash进行破解john hash --wordlist=rockyou.txt

得到密码:unicorn,成功连接

检查当前用户权限,没有sudo

当前目录下找到一个flag

find / -writable | grep -v proc,sys通过find指令来寻找可能利用文件,在可写文件中找到了/etc/passwd,

2.系统权限漏洞利用

通过修改/etc/passwd中的root的密码即可,但是这里靶机的vim我无法进行修改,应该是版本问题,所以前面操作仅供参考,后面按照顺序修改完用户密码后即可登录,达到越权目的。
文章描述了一次针对Evilbox靶场的中低难度练习,包括靶机部署、信息收集(主机发现、端口扫描、路径扫描)、文件包含漏洞的挖掘和利用,通过ffuf工具进行模糊匹配,发现并利用command参数包含本地/etc/passwd。接着,通过ssh连接,利用john破解加密私钥找到密码,最终尝试修改/etc/passwd以提升权限。
1094

被折叠的 条评论
为什么被折叠?



