日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

教你怎么屏蔽掉在移动端的宽带运营商的流量劫持,屏蔽无耻的广告

發布時間:2023/12/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 教你怎么屏蔽掉在移动端的宽带运营商的流量劫持,屏蔽无耻的广告 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

自從住進了租房以來,在使用租房的寬帶的時候總有個問題,已經幾個月了,今天我實在無法忍受這些廣告了。決定要整治這些劫持廣告。
一開始想到用socks5代理,需要自己租服務器,而且很麻煩,而且我研究了下劫持的頁面,并且從網上也發現了一些其它用戶遇到的問題。
這里有一個鏈接:
http://bbs.kafan.cn/thread-1856999-1-1.html
上面這個鏈接詳細描述了劫持的毒害。。。。

我主要遇到下面幾個類型的劫持:
類型一:輸入百度的時候,后面會自動被加上尾巴然后進行跳轉。尤其是輸入www.hao123.com的時候,會跳轉到http://www.hao123.com/?tn=94150859_hao_pg

但是如果你使用https://www.baidu.com是沒法跳轉的,建議大家修改自己的chrome的瀏覽器的默認搜索引擎,加上https,還好百度開啟了https,這時候我深感推廣https的重要性。沒有https的話,這些運營商想怎么改你的網頁就怎么修改。

類型二:就是常見的右下角廣告了,這個還好解決,裝上adblock plus就可以一勞永逸了。

但是真正讓我苦惱的是下面的類型三:

類型三:手機訪問網頁的時候,運營商會根據你的UA來植入廣告,這個廣告是和pc上瀏覽器的是不同的。
這個廣告是類似于我們玩手游的時候,在網頁中間插入一個廣告懸浮窗達到目的。。。這移動端的廣告還真是與時俱進啊

下面自己感受一下這個廣告,我有強迫癥的簡直無法忍受。

點開右側那個懸浮廣告,就會出現下面這個了:

再看一下下面的聲明,多么無恥,沒有下限啊。。。

還無毒,你知不知道你造成了騷擾啊。
這個玩意的毒害真的太大了。
主要是使用了WebView的app,app在用webview加載網頁的時候,此廣告都會識別瀏覽器中攜帶的ua信息,自動植入。。。
我看的今日頭條app在我租房的wifi下基本無法使用,今日頭條很多h5的頁面,被強行修改了頁面內容。無法瀏覽。
同時查看微信公眾號的東西,中間同樣出現懸浮窗,我不理解為什么微信不盡早使用https。

后面我開始想辦法解決這個毒瘤了。
既然你是通過ua識別的,首先我通過chrome的device mode,設置為nexus7設備訪問,刷新幾次頁面之后,如愿所償的出現了廣告。
于是我修改ua(chrome在device 模式下的ua是可以修改的),將ua修改為f u c k。

果然沒有移動廣告了,但是右下角廣告就出現了。。。
好吧我不修改ua,在ua后面加入足夠多的亂碼。經過一番測試,加到500多個沒用字符之后,不再出現廣告了。

個人理解為:這個劫持商要劫持那么多用戶,肯定對http header的長度有所限制,超出這個限制之后,它就不會再劫持了,否則他自己的服務器壓力也很大的。

到此,這個方案已經有效了,接下來是怎么運用到android平臺上。
這時候需要用到一個android上的神器框架xposed。不了解的讀者可以自行百度一下。

思路:使用xposed框架hook webView控件的loadUrl,在loadUrl之前將webView的ua修改為足夠長。
我的xposed代碼很簡單,幾行就解決了這個劫持問題了。

public static final String ua="Mozilla/5.0 (Linux; Android 4.3; Nexus 7 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2307.2 Safari/537.360123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199";@Overridepublic void handleLoadPackage(LoadPackageParam lpparam) throws Throwable {// TODO Auto-generated method stubXposedHelpers.findAndHookMethod("android.webkit.WebView", lpparam.classLoader, "loadUrl", String.class,new XC_MethodHook() {@Overrideprotected void beforeHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubObject thisObj=param.thisObject;if(thisObj instanceof WebView){((WebView) thisObj).getSettings().setUserAgentString(ua);}}});}



上面的ua,是找到一個移動端適用的ua,然后后面加上500多個沒用字符。移動端ua是一定要的,我發現如果我沒用移動端ua的話,有些app是會拒絕加載的,因為他們需要ua里面的Android這個關鍵字。

轉載于:https://my.oschina.net/zxcholmes/blog/596192

總結

以上是生活随笔為你收集整理的教你怎么屏蔽掉在移动端的宽带运营商的流量劫持,屏蔽无耻的广告的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。