1. 侦查1.1 收集目标网络信息:IP地址1.2 主动扫描:扫描IP地址段1.3 搜索目标网站
2. 初始访问2.1 有效账户:默认账户2.2 利用面向公众的应用2.3 有效账户:默认账户
3. 权限提升3.1 计划任务/作业:Cron
靶场下载地址:
https://www.vulnhub.com/entry/funbox-1,518/
1. 侦查
1.1 收集目标网络信息:IP地址
靶机启动后,没有提供IP地址。由于Kali和靶机在同一个C段,可以扫描ARP协议获取靶机IP地址。
1.2 主动扫描:扫描IP地址段
对靶机进行全端口扫描、服务扫描、版本扫描,发现21/FTP、22/SSH、80/HTTP、33060/TCP。
1.3 搜索目标网站
访问80/HTTP,会跳转到域名,但域名无法解析。
在本机添加域名绑定
就能正常访问了
是WordPress搭建的站点
2. 初始访问
2.1 有效账户:默认账户
扫描WordPress的后台帐号,并爆破帐号的密码。
最终发现admin和joe两个帐号,且都成功爆破出密码,获得WordPress的admin和joe权限。
2.2 利用面向公众的应用程序
登录admin的WordPress后台
编辑插件内容,将内容改为反弹shell
触发反弹shell
最终获得www-data权限
2.3 有效账户:默认账户
使用joe的WordPress密码尝试登录SSH服务,竟然成功,获得joe用户权限
3. 权限提升
以下提权操作,使用www-data用户权限或joe用户权限,效果是一样的。
3.1 计划任务/作业:Cron
默认shell是受限制的bash:rbash,可以使用vim命令获得正常shell
在用户目录下,发现 /home/funny/.backup.sh 备份脚本的功能是备份网站的根目录。
查看备份文件 /home/funny/html.tar 的修改时间,明显比其他文件的时间新,这说明刚刚完成过一次备份。
由此猜测,操作系统中存在定时执行备份脚本的计划任务。虽然这个环境无法通过计划任务或系统进程进行确认,但是可以通过pspy程序进行确认。
将pspy程序上传到目标服务器
赋予pspy程序可执行权限,然后执行
最终可以看到,uid是0的root用户,和uid是1000的funny用户,都会定时执行备份脚本。
那就往备份脚本中写入反弹shell的命令
有时是funny用户执行备份脚本反弹shell,可以获得funny用户权限
有时是root用户执行备份脚本反弹shell,可以获得root用户权限
通过root用户查看计划任务,确认funny用户每2分钟会执行一次备份脚本,root用户每5分钟会执行一次备份脚本。
原创 罗锦海 OneMoreThink