天天看點

Android的隐私保護利器

IPHONE/IPAD的IOS的隐私保護,曾經讓我這種玩Android的窮人急紅了眼。

1、總線控制型的第三方工具

在2011年,Android的隐私保護隻有PDroid。PDROID可以給每個程式分别設定MAC、手機号、機器碼。PDROID工作原理和IOS相似,在驅動鍊(chain)上加個節點(node)控制所有程式的請求,同時提供個GUI前端進行具體設定。它可以控制Android v2.x上的。

IMEI(可僞造)、

IMSI(可僞造)、

SIM卡序列号(可僞造)、

手機号碼(可僞造)、

來去電号碼、

SIM卡資訊、

目前蜂窩網絡資訊、

GPS定位資訊 (可僞造)、

基站定位(可僞造)、

系統自帶浏覽器的曆史、

書簽、

聯系人、

通話記錄、

系統日志、

月曆 、

目前賬戶清單、

​目前賬戶的授權碼、

短信彩信……

Pdroid在谷歌商場有提供了

官方介紹

,并且給出了

xda的官方連結

相比之下,好像所有的隐私保護工具都弱暴了。

對一般的安粉來說,Root不是大問題;問題是PDroid必須使用不加密的framework(說明硬體和結構的檔案)。HTC /Moto等等知名廠商都有bootloader lock和framework encryption。如果不加密這些檔案,不僅終端安全就暴露在暴徒手下,關鍵是hacker可以直接給手機解鎖、解除各種SP綁定了(喔 RMB USD UKP … 各種錢财啊),重寫android系統(是開源的)也都不是問題了。廠商不加密Framework才怪!

這種局限 絲毫不影響Pdroid的跨時代地位。Pdroid的作者後來放棄了這個項目,後來XDA的大師們繼續為它做更新,并且推出了新的項目OpenPDroid。

是的,我手頭的裝置都加密了framework.apk(同目錄下存在framework.odex就是加密特征)。我望洋興歎很久、很久、很久……

2、APK為核心的階段

後來,APK的自動化重打包技術成熟。逐漸出現了删除程式API(例如删除通路GPS功能)、修改API傳回值的各種工具。

例如直接禁用接口功能的APK權限修改器。不過,禁用/删除接口有可能會造成程式不能正常使用。舉例說,很多程式啟動的時候就要通路硬體ID,停用這個功能之後,修改後的APK會直接挂。

強制某些接口的傳回值為固定值(NULL等)的工具同期問世。例如洗大師,但是它必須将APK上傳到伺服器修改、并且必須保留修改程式才能使用修改後的APK。不知道是不是多數使用者可以接受呢?俺是不用了。

順便推薦一下著名的LBE。實際上LBE問世很早,但是出于資源和性能的考慮,我沒有使用過LBE。近來,LBE沒有以前那樣受歡迎。

要在這裡說明的是LBE用的技術比較複雜,應該不隻修改APK、加入調試這麼簡單。本文隻是把它放在這裡,分類可能不準确。

此外也有LBE Privacy Guard (不​需要root,2012年問世)。應該是标準的APK修改工具。

其實還有Permission  denied,下線了。

Privacy Blocker

停止更新​了……

3、谷歌重視的官方關注

Android是谷歌與Apple競争的平台。谷歌當然會重視隐私安全。

谷歌随後在Android 4.1推出了APP OPS (程式,對不起啦)功能,并且可以在設定面闆裡直接限制程式通路隐私的權限。這個功能在AOSP版本的Android裡直接可以看到,但是官方僅在4.3裡實作了前端

GUI-App Ops Starter

我們看到了App Ops類似于iOS6~7的隐私保護,它控制了下列功能:

位置

讀/寫聯系人*

讀/寫通話記錄*

收/發短信*

撥打電話

發送通知(已經在4.1實作)

在(包括其它應用程式的Activity之上的)頂層繪制

修改系統設定(指開啟藍牙,GPS,Wlan等項目,具體包括哪些API不清楚)

震動

拍照(使用攝像頭)*

錄音*

讀/寫剪貼闆*

讀/寫月曆*

android的實作方法比較體貼!Framework大家都加密,可是隐私必須保護,是以(據說)Android在app_process, 即Java程式的launcher上實作了參數傳遞的功能。即是說,app_process可以從配置檔案裡讀取參數,選擇性的屏蔽部分API的功能(應該是傳回Null)。

App Ops的Activity已經在AOSP代碼庫(2013-8月份)的一次Commit裡被注釋掉了,也就是說在可見的未來裡,App Ops應該不會出現。是以……呢

4、粉絲們的後現代主義時代

我不想多說什麼官方不官方的,因為粉絲早比我瘋狂。

最讓我着迷的恐怕是

XPosed

.XPosed(要Root)修改了App_process并且在dalvik添加了個層(我認為還是節點),可以說它hook了幾乎整個系統。Xposed架構是一款可以在不修改APK的情況下影響程式運作(修改系統)的架構服務,基于它可以制作出許多功能強大的子產品,且在功能不沖突的情況下同時運作。

目前,Per APP Setting(為每個應用設定單獨的dpi或修改權限)、Cydia、XPrivacy(防止隐私洩露)、對原生Launcher替換圖示等應用或功能均基于此架構。

XPosed的App settings子產品可以直接禁用程式的API接口,而不必修改APK檔案。不過XPosed最大招牌還是XPrivacy 子產品,阻止程式通路隐私資訊。值得一題的是,XPrivacy的僞造資訊的功能。美中不足就是,它不能針對每個程式僞造不同的資訊。對于免費軟體來說,不要要求太多了。

XPosed Appsettings 可以把每個API都給你列出來,讓你禁用。與Xprivacy 配合,Xposed可以控制近百個項目,甚至可以指定應用程式隻能看到你標明的聯系人.這種功力讓人不寒而栗。

XPosed 實際上實作了前文說的所有技術,是名不虛傳的強中之強。另外,我的電池是1200mA的,并沒感覺Xposed 多費電。

上面的程式都是Hacker的作品。Hacker保護了自己的權益,也将之推廣、造福大衆,這是黑客文化的精髓之一。

繼續閱讀