靶机下载链接:下载地址
主机发现
通过arp-scan -l
来发现主机,说明靶机换机已经搭建好了
信息搜集
通过nmap进行信息搜集,得知开放端口号,22(ssh),80(http),10000(webmin)
打开网站查看80端口,发现只有一个Apache页面
通过路径扫描也没有扫描到什么,接着打开10000端口看一下,发现的确是一个webmin的http服务(这里需要使用https)
尝试一下弱口令然后结合公开的账号密码尝试登录,无果,然后进行目录扫描,发现有个robots.txt文件,访问得到一串base64加密的字符串
通过解密得到说rips
通过搜索得知是一个PHP代码审计工具,里面有个rips的目录,然后尝试访问,发现和原理一样
然后尝试用80端口的访问,结果真的能够访问到
然后通过对/var/www下的PHP文件进行审计,发现一些文件泄露的漏洞
尝试通过文件泄露,发现第一个PHP是secret.php,点进去发现是用户名和密码
然后将其账号密码记录下来,然后尝试进行登录,发现并不能登录网站的账号,通过前面的扫描,得知22号端口开放着,尝试ssh登录,发现成功了
得到第一个flag
然后通过发现在cubes账户下有一个secret.file的文件
通过过滤查找到这个文件,
读取文件内容,发现好像又是一个密码信息
然后尝试登录网站,还是失败,然后尝试另外一个账号的ssh登录,成功了
同理,通过查看历史命令,发现有个服务器的日志文件备份了
于是进入backup目录下,查看是否还有该文件,结果有
然后,读取里面的内容,发现存在账号密码
用这个账号密码进行登录网站,成功了
通过查看相关的信息,发现直接有执行命令的地方,还是root权限
最终得到flag
还可以通过ubuntu操作系统的漏洞提权
通过对内核以及操作系统的信息搜集,发现这个ubuntu18.04.5有漏洞(CVE-2021-3494)
通过下载exp https://github.com/briskets/CVE-2021-3493
也可以提权成功
下载完成之后在kali上进行编译
然后拷贝到靶机上
然后执行exp,得到root权限,获取flag
总结:通过rips目录发现secret.php里面的账号密码进行ssh登录。然后通过历史命令得到信息,再次发现一个secret.file文件获取到另外一个用户的账号密码,然后通过这个用户的历史命令得到服务器的日志备份,从而得到网站的账号密码登录,得到root的flag。(主要通过信息收集,一步一步得到账号密码从而获得flag)