以三种均可用来绕过url跳转、ssrf等白名单url的限制。
url中的#
- "#" 代表网页中的一个位置。比如下述,就代表网页index.html的print位置。浏览器读取这个URL后,会自动将print位置滚动至可视区域。
http://www.example.com/index.html#print
- "#"是用来指导浏览器动作的,对服务器端完全无用。
- "#"之后的内容改变,仅会改变浏览器定位的位置。
url中的?
1.连接作用,通过"?" 带参数来连接域名、参数
http://www.test.com?id=1
http://www.test.com?returnurl=http://www.vul.com
2.清楚缓存。url-B通过"?"携带一个参数,表明不适用url-a的缓存,重新获取。
url-A;http://www.test.com
url-B;http://www.test.com?ursername=test
url中的@
- @之前的字符作为账号登录@之后的url
admin:pass@www.baidu.com