屏蔽广告你真的没做错吗?谈谈广告过滤的那点事

软件 Aimo 2018-08-04 00:15
1广告过滤是如何炼成的回顶部

  【PConline 杂谈】进入互联网时代后,广告愈发成为了数字生活不可或缺的一部分。无论你是开启网页还是一些软件,挥之不去的广告如影随形,如何屏蔽广告、拒绝渣渣辉送你屠龙宝刀已经成为了网民热议的话题。目前无论是在PC平台还是移动端,都已经出现了很多广受人民群众喜爱的广告过滤方案。不过,广告过滤是否就真的百利而无一害?今天就一起来谈谈广告过滤的那点事吧。

  广告过滤是如何炼成的:Adblock发展史

  说起广告过滤软件,相信大家都听说过大名鼎鼎的“Adblock Plus”,这可能是世界上影响力最大的广告过滤工具。很多朋友都用过它,而当网站请求你不要屏蔽广告的时候,提到的往往也是它。不过对于这款著名的广告过滤工具,大多数人并不十分了解。

Adblock Plus
Adblock Plus可谓是世界上最著名的广告过滤工具了

  在互联网时代的早年,广告屏蔽工具可不像现在那样百花齐放。对于当时就有燎原苗头的网络广告,一般的网民只能逆来顺受,但有动手能力的极客们,当然就不会让广告商给自己强行喂饼。于是,最著名的广告过滤工具“Adblock”就此诞生。

  早在2002年,大名鼎鼎的“Adblock”面世了。这款对互联网生态影响极大的工具,仅仅是由大学生“Henrik Aasted Sorensen”编写出来的。和现在一样,Adblock在最早也是一款非商业的软件,但它的初始版本,却和现在有着极大的不同。

Adblock的最早版本,非常青涩
Adblock的最早版本,非常青涩

  在早期的版本当中,Adblock的机制和作用,都和目前流行的版本有相当大的差距。例如,它最初只能够屏蔽图片,并不能对Flash、Java等网页元素产生作用;又例如,它是通过隐藏已经存在的广告图片,来去除网页中的广告的,而不是像现在这样直接拦截了广告的下载。但经过不断改良,它最终还是成为了现在的姿态。

  在2004年,Adblock迎来了一次革命性的更新,不仅版本号更新到了0.5,而且广告屏蔽的机制有了根本性的改变——它终于能够直接拦截广告数据的下载,而不仅仅只是隐藏广告元素了。而到了2005年,Adblock由于开发的分支,衍变成为了“Adblock Plus”,而原始版本的“Adblock”从此以后就再也没有更新过了。

Adblock衍化成为了Adblock Plus
Adblock衍化成为了Adblock Plus

  看到这里,也许有的朋友会产生疑问。明明现在到Chrome、Edge等浏览器商店中,都可以看到仍在持续更新的“AdBlock”,这到底又是怎么回事?实际上,现在的“AdBlock”和当年的“Adblock”并不是同一回事,现在的这款AdBlock是2009年才开始出现的“新品”,有开发者受到Firefox上Adblock Plus的影响,想要在Chrome上开发出一款功能类似的广告过滤工具,随即将开发出来的工具命名为“AdBlock”。虽然名字相似,但“Adblock Plus”才是更老的招牌。

没错,Adblock Plus和AdBlock是不
Adblock Plus和AdBlock是不同的软件,两者没有直接关系

  Adblock/Adblock Plus过滤广告原理

  从诞生到现今,Adblock/Adblock Plus已经走过了十多个年头。这些年来它一直是世界上最流行的广告过滤工具之一,而它也的确始终在发挥着卓越的功效。而Adblock/Adblock Plus乃至同类广告过滤工具,之所以能够如此有成效,和支持广告过滤规则订阅这一重要特性是脱不开关系的。

  从Adblock Plus的0.5版本开始,它就支持利用网络地址订阅过滤规则。网页中的广告代码,是具备一定特征的,因此利用特定的规则,就能够将广告代码识别出来,拒绝加载。而Adblock Plus支持规则订阅,只要网络上有人做出齐全的规则列表并不断更新维护,那么Adblock Plus就可以根据相应的网址自动更新过滤规则;如此一来,就算遇到网页改版、广告位置改动、出现新型广告等情况,Adblock Plus依然能不断发挥作用。

Adblock Plus的0.6版本,支持广告过滤
Adblock Plus的0.6版本,支持广告过滤规则

  说起来,这一机制其实和杀毒软件更新病毒库是有相似之处的,不过Adblock Plus能够订阅多个规则源,例如你可以同时订阅EasyList、ChinaList等多种规则。而由于能够订阅多种规则,所以Adblock Plus又多了除屏蔽广告之外的玩法——过滤规则不仅仅可以针对广告,还可以针对网页上任何你不想要的功能。想要保护隐私?可以用规则屏蔽掉跟踪代码;想要防止钓鱼?你可以订阅防止恶意代码的规则。而这些过滤规则也不仅仅是Adblock Plus的专属,不少优秀的广告过滤工具都支持各种规则的订阅。

不断更新的广告过滤规则,是广告过滤工具战斗力的保证
不断更新的广告过滤规则,是广告过滤工具战斗力的保证

  也因为如此,你很难说某款广告过滤器如此神效,到底是软件本身的功劳更多,还是过滤规则发挥的作用更大。某些过滤规则例如ChinaList宣布停止更新的时候,也会引起粉丝们的一片哀嚎。过滤规则是如此的重要,因此如果想要评价某款广告过滤工具是否优秀,它支不支持自定义过滤规则、订阅在线规则,完全可以作为一大重要标准。

2常见的广告过滤方法原理回顶部

  常见的广告过滤方法原理

  Adblock最早是以Firefox浏览器的扩展的形式出现的,在2010年Adblock Plus发布了Chrome浏览器扩展的版本,而到了近年,它又推出了安卓平台的APP。Adblock本身都有如此进化,更勿论是其他广告过滤工具了。到现在,广告过滤工具百花齐放,工作机理也不甚相同,下面就举几个经典的方案来介绍一下吧。

  ◆浏览器扩展

  这可谓是广告过滤工具最常见的存在形式了,从最早的Adblock,到现在自带去广告功能的各种浏览器,浏览器扩展多年来一直在去广告领域发光发热。

Adblock Plus最早只支持Firefox
Adblock Plus最早只支持Firefox,现在支持包括Edge在内的越来越多的浏览器

  没错,如果某个浏览器自带去广告功能,那么这功能多是利用扩展程序来实现的。倘若你有仔细观察,那么应该不难发现很多带有去广告功能的浏览器,大多是基于Chromium开发而来,这样做的一大好处是可以兼容Chrome浏览器上的扩展程序。修改某些去广告扩展后,然后将它内置到浏览器当中,这是国内很多浏览器开发商的玩法。而Adblock Plus是开源的这一点,让它更容易被改造利用。

Adblock Plus是一个开源项目
Adblock Plus是一个开源项目,大家都可以用到它的相关技术

  浏览器扩展过滤广告的功效可谓是久经考验,但它也存在显而易见的局限——它只作用于浏览器。目前人们接触互联网的渠道越来越多,例如通过APP、Web程序等等,如果网络广告并不需要经由浏览器,那么浏览器扩展自然也无能为力了。目前优秀的去广告浏览器扩展除了大家熟知的Adblock Plus,还有uBlock等等,大家可以根据自己的使用习惯选择。

  ◆Hosts修改

  Hosts文件能够影响系统对IP地址访问,Windows、Android等系统中都存在Hosts文件。在Hosts文件中添加了特定的规则后,可以阻止传输特定IP地址的网络数据,用来拦截广告自然也不在话下。

  无论在PC还是安卓,都存在通过修改Hosts从而过滤广告的工具。例如安卓平台上的AdAway,就可以在线下载广告过滤规则后,将规则写入到Hosts文件当中,从而实现广告拦截。

AdAway AdAway
Android上著名的去广告工具AdAway,就是通过修改Host来实现广告过滤的

  通过修改Hosts文件来过滤广告,能够对系统全局都产生作用,效果拔群。但它也存在缺点,首先这个方法有一定的门槛。例如,在Windows上修改Hosts文件需要使用管理员权限,在Android上则需要root,对于某些非玩家用户,这还是有一定操作上的难度。其次,修改Hosts文件去广告并不能一劳永逸,当广告过滤规则更新的时候,需要手动更新Hosts文件,这来得总不是那么的方便。

  ◆全局流量过滤

  这是现在非常流行的广告过滤方案。近年来,出现了一些能够去除系统几乎所有广告的工具软件。这些软件并不需要什么复杂的操作,一键就能够去掉全局广告。这样的软件在PC和Android系统中都有出现,AdSafe、广告过滤大师等等就是其中的典型代表。

去广告 去广告
Android上很多免root去广告工具会调用VPN掌管全局流量

  这样的软件之所以能够实现这样的功能,靠的是全局流量过滤。这类软件会建立本地网关,将用户所有网络连接的流量置之眼皮底下。一旦流量某些内容和广告过滤规则匹配,那么广告就会从流量中剔除——从原理来看,这类软件过滤广告是靠谱的,而实际效果也的确有口皆碑。

  由于在Android系统当中,APP可以建立VPN通道,因此很多去广告APP会利用VPN来建立安卓的本地网关,从而无需root也能过滤广告,深受广大用户欢迎。

  ◆IPtables过滤

  这也是一种非常常见的广告过滤方案,多见于root后的Android系统,以及一些路由器固件当中。Android系统我们知道基于Linux内核,而OpenWRT、DDWRT等路由器固件,包括厂商今年热炒的所谓“智能路由器”,往往也基于Linux。既然基于Linux,那么就可以通过IPtables来管理网络流量,去广告就是其中的一个典型用途。

DroidWall
DroidWall是一款Android平台上通过IPtables来过滤广告的经典工具

  IPtables看做是Linux系统中的一个防火墙机制。只要导入了相应的规则,那么就可以利用IPtables过滤特定的网络数据,用来拦截广告也非常行之有效。IPtables可以作用于系统全局,不过由于涉及系统关键参数,因此需要root权限才能配置。Android玩家往往会root后通过IPtables来实现广告全局过滤,而路由器玩家则会刷第三方固件后,安装去广告的插件来实现类似效果,某些智能路由器厂商则预设了去广告功能,这些很多都是IPtables来实现的。

  ◆直接拦截广告API

  这是Android平台上另一种常见的广告过滤方案。广告工具能通过一些手段,嗅探到APP的广告API,从而直接拦截。典型的例子就是基于Xposed平台的MinMinGuard,得益于Xposed能够Hook进Android系统的各个角落,因此基于Xposed的工具能够修改其他Android APP,自然也能用于拦截广告。

去广告 去广告
MinMinGuard可以通过拦截广告API来过滤APP的广告

  和IPtables一样,这种方法也需要root权限。

3去广告你真的没做错吗回顶部

  去广告你真的没做错吗

  对于用户来说,当然希望互联网的海洋一碧千里,网络上全都是有价值的内容而没有广告。而借助屏蔽广告的工具,的确可以很大程度上实现这一点,但这对于互联网来说,是否真的是一件好事?并非如此。

  和传统商业模式不同,互联网所提供的服务很大一部分是免费的,而广告则是这些免费互联网服务的支柱。以Google为例,在2018年第二财季最新的财报当中,Google的广告应收达到了220亿美元,而Google的母公司Alphabet预期营收则是255.8亿美元。除了Google,Facebook、Twitter等互联网企业的主要收入来源也是广告。广告没有了投放空间,目前大量互联网服务也就成为了无源之水,从这方面来说,业界之所以对Adblock这类广告屏蔽工具存在负面看法,也就理所当然了。

Google、Facebook等互联网大企业主要
上图为2016年的数据,可见Google、Facebook等互联网大企业主要是靠广告存活的

  用户喜欢的Adblock,对于互联网生态而言甚至可以称得上是毒瘤,很多网站检测到你开启了Adblock之类的广告过滤工具,会弹窗提示你屏蔽广告并不合理,甚至拒绝服务。而安卓官方商店Google Play,更是将Adblock Plus下架。但尽管如此,用户仍对广告过滤工具情有独钟,这主要还是因为为数不少的广告投放,吃相实在太过难看。

某些网站会请求用户关闭广告过滤工具
某些网站会请求用户关闭广告过滤工具

  很大一部分的互联网广告已经严重影响用户体验。例如某些视频站的广告,5分钟的视频的前置广告甚至可以长达一分半钟,而网站上的贴片广告也活生生把页面变成了满布牛皮癣的肮脏墙面。人们尽管明白广告之于互联网的意义,但这并不代表用户就能忍受广告的肆无忌惮。如何才能在广告和用户体验间取得一个良好平衡,始终是业界一直在探讨的难题。

  为了给出一个既不损害互联网服务商的理由、又不影响用户体验的方案,一些广告过滤工具已经行动起来。例如Adblock Plus发起了可接受广告项目,新增了一个“允许非侵入式广告”的选项,并将其默认设置为开启。对所有广告杀无赦或许太过残忍,允许一些良性广告,既可以一定程度保障互联网服务商的利益,也可以促进互联网广告走往正途,可谓是一举两得。

Adblock Plus发起了可接受广告项目,主动
Adblock Plus发起了可接受广告项目,主动放过一些良性广告

  对于整个互联网生态来说,广告过滤工具的确是存在一定害处的。但对于个人用户而言,这些工具是否就百利而无一害?也并非如此。

  前面提到,为了实现广告过滤的功能,去广告工具可能会采取一些作用于全局的方案,这不可避免会接触到用户的大量网络数据。换言之,如果这些广告过滤工具不靠谱,完全可以对你的网络流量为所欲为。而事实上这类工具也没有令人失望,爆出了暗藏恶意代码劫持流量的丑闻。

某些去广告工具从原理来看,天生就对网络流量有生杀大
某些去广告工具从原理来看,天生就对网络流量有生杀大权,劫持流量轻而易举

  根据著名安全常识火绒的播报,广为流行的去广告软件AdSafe存在流量劫持的行为。AdSafe以及它的疑似马甲“清网卫士”、“广告过滤大师”会劫持用户的上网流量,将网页进行不正常跳转,你上网的时候就算输入的是正确的网址,却有可能出现被这类工具劫持到另一个站点的情况。设想一下,如果劫持的是购物网站,那么关于你支付信息很有可能会尽入他人囊中。

  总的来说,将流量交给了去广告工具任由处置,是存在风险的。在选择去广告工具的时候,可以优先考虑从原理上看起来更安全的(如浏览器扩展类),规则更加开放的,以及口碑久经考验的,Adblock Plus依然是上上之选。

  总结

  随着互联网的发展,广告的形式也愈发丰富起来,结合大数据后,各类广告更令人防不胜防。面对新形式的广告,传统的过滤工具显得越来越力不从心。未来广告过滤工具还会有怎样的发展?用户体验和广告之间能找到一个令人满意的平衡点吗?让我们继续观望互联网的风起云涌吧。

相关阅读:

你的密码泄露没?触目惊心的密码泄露该如何查防

//pcedu.pconline.com.cn/1151/11512024.html

输入法偷录浏览器偷拍?隐私保护是否难于登天

//pcedu.pconline.com.cn/1147/11470804.html

上车了还能安全下来吗?也谈谈零元购的那些事

//pcedu.pconline.com.cn/1139/11390084.html

百度音乐更名千千音乐!你还记得千千静听的往昔吗

//pcedu.pconline.com.cn/1137/11374864.html

 

网友评论

写评论

相关推荐