绕过方式
-
攻击本机
http://127.0.0.1:80 http://localhost:22
-
利用@绕过
http://example.com@127.0.0.1 #这里的example.com可以任意替换
-
利用短地址绕过
http://127.0.0.1 可以转换为 http://suo.im/5UHEvD #短连接的转换网站有很多。http://tool.chinaz.com/tools/dwz.aspx
-
利用Enclosed alphanumerics
是一种特殊的字体,可以按照规则编码,后台仍会成功解析。
-
利用句号代替点绕过
127.0.0.1 转换为 127。0。0。1
-
特殊域名绕过
http://127.0.0.1.xip.io/ # 会自动解析到本地的127.0.0.1
-
使用进制绕过,计入127.0.0.1
8进制格式:0177.0.0.1 16进制格式:0x7F.0.0.1 10进制整数格式:2130706433 (转16进制,再转10进制) 16进制整数格式:0x7F000001
-
特殊的省略模式
如127.0.0.1可写为127.1
漏洞加固
- 禁止302跳转,或者每跳转一次都进行校验目的地址是否为内网地址或合法地址。(校验目的地址)
- 过滤返回的信息,验证远程服务器对请求的返回结果,是否合法。(校验返回结果屏蔽banner信息)
- 禁用高危协议,例如:gopher、dict、ftp、file等,只允许http/https设置URL白名单或者限制内网IP。(白名单限制协议)
- 限制请求的端口为http的常用端口,或者根据业务需要治开放远程调用服务的端口。(最少端口开放原则)
- catch错误信息,做统一错误信息,避免黑客通过错误信息判断端口对应的服务。