url中的#、?、@


以三种均可用来绕过url跳转、ssrf等白名单url的限制。

url中的#

  1. "#" 代表网页中的一个位置。比如下述,就代表网页index.html的print位置。浏览器读取这个URL后,会自动将print位置滚动至可视区域。
 http://www.example.com/index.html#print
  1. "#"是用来指导浏览器动作的,对服务器端完全无用。
  2. "#"之后的内容改变,仅会改变浏览器定位的位置。

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中的@

  1. @之前的字符作为账号登录@之后的url
admin:pass@www.baidu.com

posted @ 2021-12-28 15:50  rainbowcat'  阅读(3431)  评论(0)    收藏  举报