我试图通过对以下 URL 的请求在易受攻击的网站中获取反射 XSS:
https://vulnerable.website/dir/dir?param1=test"><svg/onload=alert(1)>
浏览器 URL 对字符进行编码,并且它也反映在编码的响应中,因此它不起作用。但是,如果我拦截了请求并在不编码的情况下键入了有效负载,则会执行 XSS。
有没有办法在没有浏览器编码的情况下发送请求?
我试图通过对以下 URL 的请求在易受攻击的网站中获取反射 XSS:
https://vulnerable.website/dir/dir?param1=test"><svg/onload=alert(1)>
浏览器 URL 对字符进行编码,并且它也反映在编码的响应中,因此它不起作用。但是,如果我拦截了请求并在不编码的情况下键入了有效负载,则会执行 XSS。
有没有办法在没有浏览器编码的情况下发送请求?
我面临同样的问题,即阻止测试 XSS 漏洞的浏览器地址栏 url 编码。
我找到了解决这个问题的两种方法:
使用 curl 发送请求,然后在浏览器中打开保存的页面
curl -o test.html https://vulnerable.website/dir/dir?param1=test"><svg/onload=alert(1)>
使用带有代理的浏览器,拦截请求并手动编辑请求以取消编码。(burp、fiddler等代理工具)
如果您没有经验,第二个选项会相当慢。