主页 > 网络知识 > 由Google Voice插件触发的DOM(3)

由Google Voice插件触发的DOM(3)

代码第12行到27行中,存在一个if条件,如果其中的k变量为真,则说明找不到类属性名为gc-cs-link的内容,然后它会继续执行一个try声明,而在该try声明中的另一个if条件则会继续执行一个检查,如果找不到名为”googlevoice”的属性和名为”nolinks”的内容元素,则继续循环document.evaluate方法,检查变量’a'中的内容是否具备子元素,以下是其入口逻辑代码:

w = a.parentNode.innerHTML,

 

y = w.replace(f, h);

 

a.parentNode.innerHTML = y

接着,如果变量’a'中的内容不具备子元素,则将继续执行下一条语句:

k.parentNode && k.parentNode.insertBefore(h, k.nextSibling); 漏洞修复

我认为开发者可能是想执行变量 ‘f’中的内容,因为该内容中保存了由(innerHTML, insertBefore)方法获取的电话变量值,如’+12223334455′,但可能写代码的时候错误地执行了变量’a’ ,而在该变量中可以构造形如’444-555-4455 <img src=http://www.52bug.cn/hkjs/x onerror=alert(1)>’ 的XSS Payload,然后漏洞就发生了。

漏洞奖励

$3,133.7

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!