Android 有可能偽造許可權授予結果嗎?

現在很多軟體都會過度索要許可權,如果不給,就直接退出。

比如高德地圖會在打開的時候要求電話許可權,我不給,它就直接退出了。

我理解高德地圖確實有打電話功能,如果它是在我點了打電話的時候要求許可權,我可以接受,但是它在啟動的時候就要許可權,我不能忍

我想問,在可以root的前提下,有沒有這種可能性:

假裝授權,就是它索要的時候,給它許可權 (假裝給它,但得到的信息是假的)。但是真正調用這個功能的時候,是阻止的,或者假裝打了個電話,它打電話的api返回個虛假的信息。

這樣的話,軟體可以正常使用,但是你的信息還不會過度暴露給軟體


可使用 AppOps By Rikka @藍莓味綠茶 實現

艾特的是作者在知乎的賬號(

應用可以在 Google Play 或者 酷安 下載到。


實名反對 @李方權 的答案。

安卓本身就有音頻焦點的機制,比如你打開電影會自動暫停你播放的音樂,而這其中通話的優先順序是最高的,連繫統通知的聲音都會被屏蔽掉,還會留你一個地圖APP?

照這個邏輯所有帶聲音的APP都需要通話的許可權了,而且不僅僅需要通話吧?QQ微信skype哪個不能打電話?能不能舉個例子到底是哪個地圖APP用這麼low的方法實現的?

參考資料

http://yrom.net/blog/2013/11/08/audio-focus/

為什麼我的地圖就不要求通話許可權,打電話也不會誤放?

最後正面回答問題。有些國內定製的ROM還真的有類似的功能,原理就是在系統層面上給它許可權,但是不給這個APP任何關於該許可權的數據。但是道高一尺魔高一丈啊,毒瘤們也是會進化的,只要實際測試一下就知道許可權還是沒到手,所以你們可能沒什麼感覺


沒有xposed的話,app ops https://www.coolapk.com/apk/rikka.appops

有xposed的話,MyPrivacy https://www.coolapk.com/apk/com.jasperhale.myprivacy

或者Xprivacy

還有很多類似的,就不一一列出了。


這種情況確實有。

曾經有次在小米系的手機上做定位,發現如果拒絕了許可權,依然能定到,但是經緯度都是0。

從ROM的角度來說,確實是可能的,root的話估計要差點,因為每個許可權後面都是一系列的API調用,單純的root怕是不能保證這一系列的調用不出錯。


客戶端獲取的任何信息都能偽造。


那個電話許可權要求的不是讀取本機識別碼么?


我自己是用的AppOpsXposed ,這個許可權屏蔽是欺騙式的。不過需要xposed框架。


聽說華為是有返回電話本是空的那種……

另外安卓的許可權真是全憑開發者自覺2333,

不過有一點就是廠商也是很討厭的……有些許可權的名稱不給你說清楚來瞎解釋……我自己開發的時候都一愣一愣的……我啥時候要求這許可權了?比如我要求獲取wifi信息的那個許可權叫獲取定位信息。喵喵喵?ヽ(??ω??)?


之前的回答確實比較片面,大家當個段子看就好。

要實現這個電話時停止語音播報的功能用監聽通話狀態的方式當然是可以的,但需要申請許可權。

另外還可以用AudioFocus來控制,不需要許可權。

謝謝各位提醒,請求電話許可權可能還和獲取IMEI有關。

---------以-------下-------是--------原-------答-------案------

地圖要求電話許可權不是為了打電話,而是為了監聽電話狀態,當有人給你打電話的時候,要暫停導航、停止語音播報。

否則就會出現以下情況:

老婆:老公下班了么?

老公:沒有,今天公司有業務,估計會加班很晚。

導航:目的地到達,XXX酒吧 在道路右側,已為您推薦最近的停車場。

老公卒。


連 Root 都不需要


現在智能機幾乎沒有什麼隱私可言,各類軟體各種許可權,雖有X隱私這類強力插件,

但身為使用者,該禁哪個又不該禁哪個?不禁,隱私堪憂,禁了,也就沒了方便,

收到驗證碼不能自動填寫,語音助手無法準確識別聯繫人,除此之外很多流氓廠商,

他們冠冕堂皇的要你許可權,不給直接強退,更有無恥之徒,在獲得了用戶剛需後,

直接強製取消網頁服務,強迫用戶使用App,至於它們是否會後台上傳你的數據,

那就無從得知了,畢竟大多數人是不關後台流量的,簡訊,通訊錄不過幾百K而已。

我有個用APP辦網貸的朋友,當時APP必須要讀取通訊錄,通話記錄,定位等許可權,

結果他可恥的逾期了,不止被登了徵信,他通訊錄里的人,也時常收到催貸的電話,

說來倒也般配,一個可恥的人碰上了一家可恥的公司,然後碰出了一片可恥的火花,

殃及了那些在通訊錄里躺槍的池魚

不能單單說App,應該說是整個互聯網都沒有多少隱私可言,App只是充當了催化劑,

那些個壟斷了你剛需的大廠,如阿里,百度,騰訊,58等,對於使用網路的你而言,

你的人脈,你的住址,你的言論,你的荷包,你的負債,你的關注,你的需求...........


高德地圖索要電話許可權不是為了打電話,據我所知,高德地圖打電話只是會跳轉撥號盤,而跳轉撥號盤是不需要許可權的。

高德索要電話許可權是為了獲取手機IMEI和手機號碼,用於大數據分析,精準推送廣告等。


bat應用跟xprivacy的鬥爭就沒停過!

反正我沒用成,淘寶直接閃退,沒糊弄住。。。


android6.0以後已經改成動態許可權,不需要在安裝時全部同意,而是動態按需授權


這樣當然可以做到。事實上,在Google推出許可權主動申請API之前(Android 6.0之前的系統),國產定製安卓系統都是這麼乾的。現在,對於target api &< 23的應用,國產定製安卓系統也是這麼乾的。

隨便一提,一般情況下,應用請求電話許可權是為了獲取你的IMEI/MEID來標誌一台設備


app ops


做過一期許可權方面的開發,深有體會,這個東西在系統定製層面完全可以偽造,不同的機型即使點了拒絕/允許,得到的可能是相反的


Android 內置的 AppOps 實際上是可以不返回授權結果的,如果版本過低,可以試試 Xposed ,或者各大安全(系統管理)軟體的許可權管理(如360衛士),衛士可以在許可權管理設置中設置始終返回授權。如果還是沒有效果,可以偽造系統信息。


通過root好像不行,但是通過裝xposed框架可以實現。有專門的XPosed模塊應用來管理應用許可權,名字忘了,一搜一大堆。這種管理軟體管理許可權的話被管理軟體好像是檢查不出來的,不影響正常使用。還可以管其他系統管不了的許可權。還能管是否允許通知,後台運行,或者強制後台運行,軟體解析度,像素密度,是否自動隱藏或沉浸狀態欄和虛擬按鍵,還可以設置在鎖屏狀態(有密碼)下也顯示軟體,這樣玩遊戲時誤鎖屏也不用再解鎖浪費時間了,退出遊戲後自動返回鎖屏界面,也不會泄露隱私,還有更多其他設置。不過一切都必須先裝XP框架。

裝xp框架有風險,裝錯會無法開機


舉幾個例子,網易雲音樂不需要任何許可權可以正常打開播放,你換QQ音樂試試?

這個電話許可權有點寬。。可以細分成兩個

這兩個是有區別的,一個是判斷用戶的狀態,比如來電話就停止播放,

一個是用戶的設備唯一標識,哪怕你出廠設置不登錄,軟體也能通過這些信息知道你曾經關注感興趣什麼,來精準推薦。。

(58就是這樣,一次去珠海,搜了一下房子,結果回深圳,出廠設置不登錄,連續推薦了一個月珠海的房產信息。。)

高德地圖,不開gps還能「精準」定位靠的是基站,設備唯一標識,去掉後高德就是瞎子,否則就像電腦用IP只能定位到縣 街道就不錯了

軟體申請這麼多許可權就是想耍流氓,與其就隱私徵詢你的意見,不如直接粗暴的好。

通過軟硬體,用戶習慣,生成信息,大數據就是這麼乾的,不趁現在法規寬鬆,等到何時?

要麼接受,要麼自己折騰,root,裝x框架,各種插件可以改。


推薦閱讀:

如何評價酷安V8?
如何使用 Android 7 新增功能阻止 App 的相互喚醒?
有哪些比較實用又有格調的 App?

TAG:Android應用 | Android開發 | Android |