路由器里的广告秘密

608次阅读  |  发布于4年以前

1.捞油水

“今天的工作累死了,这好色的人类看了这么多视频,可把我忙的够呛”,负责数据转发的阿斐瘫坐在椅子上,没了精神。 “别抱怨了,咱们所在的路由器就是干这活的,这就是命啊,来抽一支放松下”,一旁负责WIFI连接的阿讯递来了一支香烟。

阿斐接过香烟,掏出打火机点燃,猛吸了几口。

阿斐和阿讯是路由器中的两个模块,打出生起就在路由器中工作,一直勤勤恳恳为人类能够连接互联网默默工作。

“你要是觉得这工作干的没有奔头,要不咱想个办法捞点油水?”,阿讯朝阿斐挤了下眼睛。“咳~~,”,阿斐呛了几声,“捞油水?怎么个捞法?” “你看啊,你每天经手那么多数据包,随便挑一些HTTP协议传输的网页,在里面插入一点广告,咱不就可以赚钱了吗?”

“啊,这样啊,这不太好吧,要是被发现了怎么办?”阿讯吐了一个烟圈说道:“怕啥,就是一点广告,不碍事,这些人类早就习惯了满屏的广告了,不差这一点。你要实在担心,那咱设置一个概率,比如只有20%的网页插入广告,这样就不容易被发现了。” “听上去可行,只是不知道具体怎么操作呢?”,阿斐又问道。“这样,咱们分工下,广告的事情我去负责,我去联系下广告商,至于如何修改数据包插入广告,你去研究一下,好吧?”“好嘞!”,说完阿斐和阿讯戳灭了手里的烟头,开始分头行动。

2.网页篡改

阿斐拿出了前端技术指南,研究了一晚上终于想到了方案,第二天找到阿讯商量。“讯哥,我有办法了!”“哦,这么快,说说看,什么办法?”

“我可以在HTML网页中直接插入iframe标签,里面就可以嵌入我们的广告啦!”,阿斐自豪的说到。

“嗨,就这啊,我还以为你有什么好的办法呢!这么简单还用你想”,阿讯有点失望。

“怎么了,这有什么不对吗?”

“不是不对,你要考虑咱们的广告又不是固定一个,你不能这样固定写死啊。”

“那简单,换成script标签,在网页中插入一段JS代码,去咱们的web服务器动态拉取广告,就可以灵活管理了,怎么样?”

“还是不行,浏览器发现跨站脚本访问会禁止的!”,阿讯再一次否定了阿斐的方案。

“跨站脚本?这是什么意思?”

“你回去再研究研究吧”,阿讯说完就离开了。

原先兴高采烈的阿斐一下子像泄了气的皮球,本以为可以大功告成没想到被泼了一盆冷水。

阿讯走后,他又搬出来前端技术指南,打算研究一下这个跨站脚本是个什么意思。

半晌过去,阿斐总算弄懂了,随即也想出了新的办法,下午又找到了阿讯。

“迅哥,我又有办法了。浏览器只会限制script中的JS代码,但不会限制通过外部引入的JS哦”

“外部引入,什么意思?”,

“把我们的代码写在单独的文件中,然后像这样引入到原网页中,就可以搞定了”,阿斐一边说,一遍给阿讯画了一个示意图:

<html>
<head>
  <script src="http://xx.xx.xx.xx/xx/x.js"></script>
</head>
<body>
  ......
</body>
</html>

“嗯,刚好我这边联系了一个淘贝网的广告,咱们来试一试”。

3.302重定向

按照这种办法,阿斐和阿讯开始了他们捞油水的尝试。

阿斐在数据转发的时候,遇到HTTP协议的数据包,就看一下Content-Type是不是text/html,如果发现传输的内容是html网页,就在head标签中插入一个外部引用script,通过这个外部的JS脚本动态的生成一个iframe加载他们的广告。

很快,阿讯就统计到了广告的拉取数据和点击,看着数字蹭蹭的增长,他俩高兴坏了。

阿斐和阿讯靠着修改数据包插入广告赚得盆满钵满,不知不觉就过了一个月,意外却发生了。

这一天,阿讯急匆匆的找到阿斐,“阿斐,最近广告拉取和点击数据直线下滑啊,什么情况啊?”“难道我们插入在网页中的内容被安全软件发现了?别着急,我想想办法”,阿斐开始思考对策。

思考一会儿后,阿斐打了一个响指,“有了!咱们不修改HTML网页!修改它引用的JS文件”

阿讯一脸问号,没太听懂,“修改JS文件,什么意思?”

“迅哥,你看,现在的网页一般都会引用很多JS文件,比如JQuery这种公共的前端库代码,咱们要是在这个JQuery文件中做点手脚,你想想呢?”,阿斐一边说一边挑了挑眉毛。

“你小子,脑子挺灵光嘛!挺不错的想法,我给你再加一招”

“哦,还有什么招数,愿闻其详”

“你也别每次修改数据包了,麻烦还容易出错,要不提前把修改后的文件准备好,到时候遇到对应文件的请求,直接用一个302重定向,岂不是更省事?”,阿讯说完拍了拍阿斐的肩膀。

“302跳转?我怎么没想到,佩服!我这就修改下方案”

当天,阿斐就修改了方案,很快就见效,广告的拉取数据又涨回来了。

晚上人类已经睡了,兄弟俩好好的庆祝了一番,原以为在路由器干活是一件艰苦差事,没想到是个肥差,两人喝了个酩酊大醉

4.HTTPS

这美滋滋的生活仍然没有过太久,没出半年,广告费又开始锐减。

“阿斐啊,咱们的方案是不是又被发现了?”,阿讯又找到了阿斐。

“讯哥,我也正想找你说呢,最近HTTP协议的数据包太少了,很久才能碰到。”

阿讯不相信,观察了好一会儿,确实发现HTTP协议的流量少了许多。

“我还是不太相信,人类怎么可能不上网,这其中一定有诈!难道是他们换了端口,不用80端口了?”,阿讯在一旁自言自语。

“不大可能吧?”“有了,阿斐,你留意下原来那些网站的IP地址,看看他们现在的流量有没有在其他端口上去”

按照阿讯的建议,阿斐开始留意起几个经常访问的网站IP地址,果然,80端口的流量没有了,另外一个端口的流量倒是多了起来。

“讯哥,他们果然换了端口!你真聪明!”

“哈哈,快告诉我他们换什么端口了?”,听到好消息的阿讯一下高兴起来。

443

“嗯,知道了端口就好办了,调整下关注目标策略就好,居然跟我们玩起了躲猫猫”

“等一下讯哥,你过来看看,这数据好像不是HTTP协议,怎么看不太懂啊,难道被加密了?”

“纳尼???”

补充说明

看了本篇,也就知道为什么网站需要全站 HTTPS 了吧。如果你之前有遇到过本文出现的情况,那就暴露年龄啦。

  1. 现在一般情况下主流网站都是全站HTTPS了;
  2. 路由器厂商一般也不敢这么明目张胆地干了;
  3. 非HTTPS的,一般浏览器也会提醒你注意“安全”。

之前本人还遇到过运营商劫持网页,干些“流氓”的事情的,就是运营商悄悄在网页中插入了当前的流量使用情况。大家访问网站也一定要注意目标网址是不是预期的网站,谨防钓鱼。

特别是在微信中,因为不会直接显示网址,所以往往可能会忽略,在此提醒大家,特别是在要求输入敏感信息的网页,大家需要确认目标网址(在微信中下拉网页就能看到具体的网址信息)是否是预期的网站。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8