cloud靶机的渗透
5.1 Get user shell
5.1.1 初步识别靶机基本信息
依旧以获得靶机IP以及版本,系统信息,开放端口服务为突破点
由此可得如下总结
是为一台Linux靶机,那么则展开对Linux靶机的渗透测试
5.1.2 端口服务探查
这里ssh服务版本8.4,没有版本漏洞,并不知有无设置弱命令,后台爆破(没有设置ssh弱命令,因此爆破失败)
80端口显示是一张
设备离线的错误报告,web渗透,有理由怀疑有隐藏目录或者源代码里做文章,使用dirb与dirsearch进行一次目录爆破,发现并无隐藏目录
使用命令curl 192.168.5.52查看一下源码
发现可疑base64编码文件,分析可得是一个标准的WAF拦截页面,告诉访问被阻止了,而且源码中的 Base64 字符串是 favicon 图标的数据,base编码目的是编码图片,并无渗透点
666端口服务探查也是HTTP服务,查看
发现有一个可疑域名,添加到etc的host配置文件中,访问发现,访问不了
9443端口,发现是长亭雷池社区版(SafeLine Community Edition)Web应用防火墙的登录页面,这里通过抓包,爆破用户与密码(没有设置弱密码),爆破爆破失败
9455端口服务unknown,因此必须手动探查具体服务,有多做方法,使用Netcat建立手动交互,使用Amap(一款针对渗透测试器的应用程序扫描器,能识别运行在非默认端口的应用程序),这里用Netcat作为演示,
发现交互shell但是通过简单测试,并不能越权操作
输入help发现隐藏密码,输入显示密码
95443端口也是unknown,手动交互发现,并没有突破口,网页访问,发现下载了一个空文件,
下载多次发现名字是随机的,并不是什么密码等
5.1.3 雷池WAF后台探索
结合所有信息,发现一个可疑密码,一个登录WAF登录平台,测试,发现登录成功
成功登录发现是,雷池WAF管理后台,版本Version 9.2.1,搜索并没有相关漏洞,浏览发现对80端口的cloud.dsz进行防护,拦截所有的访问,与我们之前获得的信息相匹配,
探索发现,改变维护模式,可以正常访问
5.1.4 命令执行漏洞
重新访问80端口
发现选择检查项有自定义命令,能执行密码,自然联系到命令执行漏洞,开始测试反弹shell
成功获得www-data的shell
5.2 Get root shell
5.2.1 迷宫探索兼用户横向移动
以成功登入目标系统,获得普通权限,现在是提权,大致四种方法查看内核版本,查找SUID文件,检查当前用户可以以root权限执行哪些命令,查看系统计划任务配置,
基本测试发现www-data用户并没有任何提权方法,访问/home目录,发现有一个本地用户lucky
因此问题转变成能否从www-data用户到lucky用户,当简单测试后,没有收获,这里要思考有没有实时进程或者本地开放端口等,用pspy64工具查看有没有实时进程(没有),命令ss -lntup查看本地端口开放情况,也没有可利用的。
综合得到所有信息,若密码非常复杂,用户可能会在本地备份,因此,我们开始在Linux迷宫中探索可用信息,/opt,/tmp……等等目录,最后,在根目录发现多余目录data,
探索并搜索发现
这是雷池WAF的核心程序目录,.env 文件的内容包含了雷池 WAF 的关键配置和敏感信息,里面暴露了PostgreSQL 数据库的超级用户密码,上方已经提前查看开放端口,并没有PostgreSQL 服务(默认端口 5432),因此失败。
继续探索并没有任何可用信息,考虑到密码复用,尝试登录lucky用户,
成功登录
5.2.2 正则表达式
继续常见提权测试,SUID,sudo权限滥用以及内核提权,发现并无可利用点,查看本地目录,发现隐藏文件
得知密码长度为4,开头结尾是r和o,运用正则表达式生成爆破密码文件,
Kali本地hydra爆破登录,并不行,在靶机上的ssh config上查看,发现这里做了限制,禁用了root的ssh远程登录,所以要在靶机上进行,发现靶机并没有安装依赖包wget密码不识别,既然开着ssh服务,用scp传输,
然后在靶机上进行爆破
成功攻入