Healthcare靶机渗透总结
靶机下载地址:
https://download.vulnhub.com/healthcare/Healthcare.ova
-
打开靶机,使用nmap扫描出靶机的ip和所有开放的端口
可以看到,靶机开放了21端口和80端口
21端口为ftp的端口,一般遇到这种,就可以考虑ftp的匿名登录,我们可以试一下
用户名anonymous,没有密码,这里登录失败
那么只能根据80端口,打开网站,然后去网站入手 -
打开网站先试试功能点,看能否找到可利用的漏洞,这里没发现漏洞点
然后可以在源代码里面找找看有没有提示,这里也没有
那么就进行信息收集,尝试目录爆破,这里只剩下目录扫描了,所以说目录爆破必须要出来点结果,才能继续下去,否则无法继续往下走了这里注意,如果使用dirb或者7kbscan或者御剑扫描出来的结果都缺少了关键的目录
是因为字典不够全,我这里也是按照别人使用的工具和字典才跑出来的使用的工具是gobuster,apt-get install gobuster 就可以安装,安装前可以apt-get update更新一下
字典是从github上找的,网址: https://github.com/danielmiessler/SecListsgobuster dir -u http://192.168.11.139 -w /home/kali/Desktop/SecLists-master/Discovery/Web- Content/directory-list-2.3-big.txt -t 50
http://192.168.11.139/openemr/
-
打开跑出来的网站,默认是一个登录页面
先试试弱口令登录,发现不行
然后考虑搜索openemr版本漏洞,它这里显示版本4.1.0
使用searchsploit去搜索openemr的版本的漏洞
只要是符合版本的都要去试一下
然后这里需要更新一下searchsploit
使用searchsploit -u 更新
更新之后再次搜索,会发现多出漏洞,然后不断实验之后,发现49742.py的这个sql注入漏洞可以利用
使用的话需要修改源码
/usr/share/exploitdb/exploits/php/webapps/49742.py
将代码里面的url改成自己靶机的即可
然后直接使用python执行脚本
这里它会慢慢枚举出用户和密码,需要等待会
可以看到有两个用户admin:3863efef9ee2bfbc51ecdca359c6302bed1389e8 medical:ab24aed5a7c4ad45615cd7e0da816eea39e4895d
密码看起来像是md5加密
使用在线网站破解了admin的密码,密码为ackbar
https://www.cmd5.com/
成功登录进去
-
登录进去之后,要么找文件上传的点,要么找框架的rce漏洞
这里发现一个文件上传的地方
并且上传的文件没有防护,可以上传任意文件,并且给出了保存的路径
可以看到我上传的phpinfo成功解析
那么就简单了,上传一句话木马,使用蚁剑连接
-
然后就是去翻找,看有没有有用的文件,可能某些文件就存放着数据库的账户密码等信息
这里没有发现,那么考虑提权
试了常用的提权方法,都不太行
但是在查找suid属性文件的时候发现一个可疑的文件
/usr/bin/healthcheck,这个文件与靶场名字相关联,很有可能就是提权点find / -perm -u=s -type f 2>/dev/null
这里查看和运行了一下文件之后,发现打印出了网卡信息,并且在文件中存在ifconfig
那么可以考虑环境变量劫持
-
由于需要环境变量劫持,蚁剑工具可能会有bug,所以我们需要使用meterpreter
利用msfvenom先生成一个php的木马
然后直接上传
先在kali使用msf的exploit/multi/handler模块
然后访问这个shell.php,产生会话回连
这里的环境变量劫持可以参考这篇文章理解
https://blog.csdn.net/itworld123/article/details/127023927