CTF特训营:技术详解、解题方法与竞赛技巧
上QQ阅读APP看书,第一时间看更新

4.2 防护绕过

很多开发者使用正则表达式的方式对SSRF中的请求地址进行过滤,具体表现如下。

·限制请求特定域名。

·禁止请求内网IP。

然而,这两种过滤都很容易被绕过,可用的方法具体如下:

1)使用http://example.com@evil.com这种格式来绕过正则。

2)IP地址转为进制(八进制、十进制、十六进制)及IP地址省略写法,举例说明如下。

·0177.00.00.01(八进制)

·2130706433(十进制)

·0x7f.0x0.0x0.0x1(十六进制)

·127.1(IP地址省略写法)

以上4种写法均可表示地址127.0.0.1。

3)配置域名。如果我们手中有可控域名,则可将域名A记录指向欲请求的IP进行绕过操作:


evil.example.com => 10.0.18.3