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我无法进行修改,应该是版本问题,所以前面操作仅供参考,后面按照顺序修改完用户密码后即可登录,达到越权目的。