背景:
不知什么起,用手机端浏览博客园的频率变多了。
也不知什么时候,浏览就成了这个样子,满屏是广告:
手机端就那么点空间,三分之二都是广告,我靠!!!!!
于是,不断追寻着真相!!!
1:怀疑打赏插件:
细心的网友发现,我把打赏插件去了,而是直接换成了在下面的两张图片。
在发现广告之初,我的思维是这样的:
1
2
3
4
5
a:我发现其它人的博客基本没有广告。
b:只有我的博客有广告。
c:电脑没有,只有手机端出现。
因此,我怀疑我的博客链接的第3方的网址引发的。
于是,我彻查了一下,发现引入了第三方打赏插件的js。
神奇的是,当我把js删除,保存后,广告竟然就消失了!!!
因此,我有点火了,一个开源的js,竟然偷偷摸摸插广告?
一度我想写文喷这种行为!
不过要写文,就要拿证据,因为,我必须拿到源代码,而且有截图!
于是,我新建了个demo页,引入js,在手机端浏览,期待它出来广告之时,竟然木有????
咋了,竟然出乎我的预期?
于是,我进一步在园子里找,其它引用该插件人的博客。
用手机端浏览,发现,对方的博客竟然也没有弹!!!
既然广告不弹了,就不管了,我也不再引入该js,换成图片了!!!
2:怀疑房东的网络或电信网络:
才过没1-2天,广告又袭来了,而且变本加厉,从原来的1/3屏,到现在的2/3屏。
记得很久前,我就写过一篇文章:简说宽带商的弹窗广告进化及网站应对之策(dns劫持进化论)
因此,既然不是第三方插件,很有理由,相信网络的劫持!
而且,劫持手机端,我还无可奈何,因为电脑端还能写个软件或改host屏蔽,手机端。。。唉!
忍了!!!!后来在闪存给dudu @了一个,希望它从源头处理。
dudu的反馈是这样的:
但是昨晚的一件事,让我怀疑这事并不简单。
我在另一个地区的地方访问时(其它电信网络),同样出现了广告,而且是一模一样的广告。
我觉的运营商就算弹广告,也是各自为政,分散小团体搞,不可能在一个市的层面上搞。
但是也没有办法去证实。
3:二度怀疑是cnzz插件
说二度,就是在怀疑打赏插件时,我博客也就只剩下引入cnzz插件了。
就在刚刚,1点多的时候,发现睡不着,手机浏览一下,又是满屏的广告,火大了!!!!!
玛尼,三更半夜又咋的,躺床上又咋的,起床开电脑,一定要彻查!!!!
打开fiddler来追踪,结果发现拦截不到(大概fiddler监听的是127.0.0.1,没细想)
于是打开了秋式广告杀的项目:
虽然它现在已经退休,没怎么维护了,但它目前最好的效用就是用来拦截调试手机端的请求。
运行软件,怀念一下:
默认监听着8888端口,debug模式下,会输出所有请求的网址:
接着把手机端的代理设置上:
然后在手机浏览自己的博客,接着看输出的窗口信息:
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_64mscorlib2.0.0.0__b77a5c561934e089mscorlib.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“秋式广告杀手.exe”(托管): 已加载“f:code开源代码adkilleradkillerbindebug秋式广告杀手.exe”,符号已加载。
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_msilsystem2.0.0.0__b77a5c561934e089system.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_msilsystem.windows.forms2.0.0.0__b77a5c561934e089system.windows.forms.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_msilsystem.drawing2.0.0.0__b03f5f7f11d50a3asystem.drawing.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_64system.web2.0.0.0__b03f5f7f11d50a3asystem.web.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_msilsystem.configuration2.0.0.0__b03f5f7f11d50a3asystem.configuration.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_msilsystem.xml2.0.0.0__b77a5c561934e089system.xml.dll”,已跳过符号加载。已对模块进行了优化并启用了调试器选项“仅我的代码”。
在 system.net.sockets.socketexception 中第一次偶然出现的“system.dll”类型的异常
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_msilmscorlib.resources2.0.0.0_zh-chs_b77a5c561934e089mscorlib.resources.dll”,未加载符号。
“秋式广告杀手.exe”(托管): 已加载“c:windowsassemblygac_msilsystem.resources2.0.0.0_zh-chs_b77a5c561934e089system.resources.dll”,未加载符号。
在 system.argumentexception 中第一次偶然出现的“mscorlib.dll”类型的异常
线程 0x1adc 已退出,返回值为 0 (0x0)。
99,100
线程 0x1188 已退出,返回值为 0 (0x0)。
98,100
97,100
96,100
95,100
94,100
92,100
线程 0x1bac 已退出,返回值为 0 (0x0)。
线程 0x694 已退出,返回值为 0 (0x0)。
线程 0x1ae0 已退出,返回值为 0 (0x0)。
线程 0x12b8 已退出,返回值为 0 (0x0)。
93,100
90,100
89,100
88,100
线程 0xc74 已退出,返回值为 0 (0x0)。
线程 0x184 已退出,返回值为 0 (0x0)。
线程 0x1a68 已退出,返回值为 0 (0x0)。
87,100
线程 0xf6c 已退出,返回值为 0 (0x0)。
86,100
线程 0x17b8 已退出,返回值为 0 (0x0)。
线程 0x1730 已退出,返回值为 0 (0x0)。
线程 0xf9c 已退出,返回值为 0 (0x0)。
线程 0xb38 已退出,返回值为 0 (0x0)。
线程 0x16a4 已退出,返回值为 0 (0x0)。
线程 0x1934 已退出,返回值为 0 (0x0)。
线程 0x1044 已退出,返回值为 0 (0x0)。
线程 0xefc 已退出,返回值为 0 (0x0)。
从输出的网址上看:
从gzs20.cnzz.com之后,就开始出现几个不知名的网站的跳转,最后就出来了。
当我想重新刷新,来调试每个文件输出的信息时,发现广告消失了,我靠,这是有灵敏啊!!!
搜索一下cnzz弹广告的事:
发现网上到处有cnzz弹广告的信息:
但真相是不是它呢?
根据个人基本常识,可以90%判断它是来源,但是,有但是哦~~~~
4:怀疑dns被劫持!
我看了一下电脑,并没有设置dns,而手机,我是设置了8.8.8.8,4.4.4.4
网上也有介绍,可能是8.8.8.8这个也被劫持了。
终于的可能性也是,dns劫持后,仅对有统计插件的下手,而且是随机的!
总结:
这个广告的插入,手法太叼了,而且反应极灵敏,一感知到有人查,就自动消失。
像博客的文章,只要重新保存,也会消失一阵子。
虽然上面做出了预判,但并没有100%的证据来证实。
目前总体的预装怀疑是:dns+js插件。
目前已取消8.8.8.8的dns,继续观察!
夜太深,写完入眠了~~~~