VulnHub靶场 Easy Cloudantivirus
进行二层发现
目标锁定 192.168.135.205
,对其进行端口扫描,得到如下结果
在目标 IP 下的 8080 端口,有一个 Python 的 WEB 服务,访问页面得到如下结果
要求填写邀请码进行使用。进行 FUZZ 测试,在测试 "
的时候,出现的 sqlite3 报错
直接把代码爆出来了。
看一下 sql 语句
简单构建一下
即输入 " or 1=1#
,进行尝试,结果如下
额……换个 --
注释试试
成功,返回了一个 ls -l
的命令结果。说明后端执行了命令,试试管道符
成功执行命令,我们借此可以反弹 shell,发现目标靶机自带 nc,尝试连接
失败了,可能是版本不对……,想到一个法子
第一个的结果传递给 /bin/bash
,然后再传递给第二个连接,这样不就另类的实现了 shell 嘛
成功。不过这样有点麻烦,直接传一个 MSF 马进去
成功喽。有一个数据库文件,下载下来,啥也没有。
再进行信息收集的时候,发现在 /home/scanner
下,有一个可执行的,有 sudo 权限的,属主为 root 用户的 c 源文件
查看一下源码内容
这是一个更新脚本,要求传递两个参数,拿 nc 简单试试
查看反弹结果
成功得到 root 权限,然后再传 MSF 马,得到 root 权限的 MSF 后门
成功拿到 root 权限