声明:该篇文章仅供学习网络安全技术参考研究使用,请勿使用相关技术做违法操作。本公众号的技术文章可以转载,能被更多人认可本文的创作内容属实荣幸之至,请在转载时标明转载来源即可.也欢迎对文章中出现的不足和错误进行批评指正!
实战打靶系列第 15 篇文章
一般在获取靶机的初始shell后,会进行提权,可以先查看home目录下的用户,因为有可能需要这个用户来做跳板去获取root权限;然后可以查看有没有sudo滥用,定时任务,suid文件,或者home目录下另外一个用户时宿主的文件等等,但是,往往有一个很容易被忽略,历史命令的查看。
sudo arp-scan -l
那么靶机的ip:192.168.56.118
kali的ip:192.168.56.102
扫描开放的端口
nmap -p- 192.168.56.118
扫描开放的端口运行的服务版本和操作系统的版本
nmap -p22,80,10000 -sT -sV -O 192.168.56.118
22端口是ssh服务,80端口是apache的http服务,10000端口是webmin的一个http服务,操作系统探测是Linux 4.15 - 5.6
apache的默认页面
对80端口进行目录爆破
dirsearch -u http://192.168.56.118
没有任何可以利用的文件和目录,可以去指定文件后缀进行爆破,但是也是没有任何收获
需要去用https进行访问,但是这样子访问域名访问不了,需要修改host文件,可以直接访问ip加端口,将http修改成为https即可
发现是一个webmin的登录框,使用一些常见的弱口令进行登录,登陆不了
尝试使用searchsploit webmin ,查询关于这个cms的漏洞,发现又远程代码执行,但是需要身份验证,那么只能先放弃这条途径
对10000端口进行目录爆破,发现爆破的速度非常慢,那么尝试手动去检测一些常见的目录或者文件
比如robots.txt
发现有base64加密,使用kali进行解码
解码之后,意思为可以使用rips去扫描php代码,这样子的话,那么目标上面应该存在rips这个工具
rips是PHP源代码审计工具,访问它只需要在url后面加上对应版本的rips名称或者直接rips
那么尝试在10000端口后面添加rips(因为不知道rips的版本)
发现没有rips的页面,去80端口尝试使用
发现80端口可以访问rips
rips这个页面可以去检测指定路径下的所有php文件,看是否存在漏洞
因为apache的默认服务是在/var/www下面,那么可以去s扫描/var/www或者/var/www/html
所以扫描/var/www比较全面
发现去确实爆出了很多的漏洞,尝试对一些文件包含进行利用
没有办法包含文件目录之外的,尝试包含文件目录之内的
那么这些文件包含仅仅只是能包含文件目录之内的
注意到rips有search的功能,尝试去查找是否会有包含pass,user,passwd,username字段内容的文件
当去查找有pass的文件时,出现了一个echo "pass:"
查看具体的文件
发现账号密码
拿到账号密码之后,第一时间想到了10000端口的登录框,尝试登录
登陆不了,根据信息收集,发现有22端口
尝试22端口的登录
成功登录。获取了初始shell
没有suid文件,也没有定时任务和sudo滥用
find / -user cubes -type f 2>/dev/null
逐个查看,当查看到/mnt/secret.file(但是其实一眼可以看出secret这个单词,秘密的意思,这就很可疑)
发现密码,这个文件又是cubes用户的,那么而且还用户试试
切换成功
history
发现secret.file文件
直接查看登录
find / -user cubes -type f -exec ls -la {} \; 2>/dev/null
这条命令会返回很多的文件,使用grep过滤掉含porc目录的文件和png后缀的文件
find / -user cubes -type f -exec ls -la {} \; 2>/dev/null | grep proc -v | grep '.png' -v
对这些文件的逐个查看,当查看到最后一个, /var/webmin/backup/miniser.log,webmin的日志文件
既然是webmin的日志文件,那么额尝试webmin的登录
登录成功
来到这个页面
一、直接在other下,有一个root权限的shell
拿到flag
二、也可以利用前面searchsploit webmin找到的远程代码执行(msf,因为已经有账号密码进行了身份验证)
设置账号密码,rhost,lhost信息,还得将ssl设置为true,因为10000端口时https进行访问的
直接run
获得root权限
在第一次提权历史命令的查看,还发现了root用户操作了webmin的日志文件
查看日志文件
同样操作
拿到flag
参考资料:
https://www.aqniukt.com/goods/show/2434?targetId=16289&preview=0