吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Android系統層級分析與權限問題

麥辣雞腿堡 ? 來源:嵌入式Linux系統開發 ? 作者:Jasonangel ? 2023-10-07 15:03 ? 次閱讀

Android 層級分析

這個圖中 kernel 和 native 層的通信是 syscall,這個大家都很熟悉,就是系統調用,畢竟 C++ 調用 C 語言還是很簡單的。

而 FrameWork 層和 Native 層通信就比較復雜了,java 如何調用 C++ 語言,這里會有一個 JNI 機制,JNI 有特定的語法,類似于 C 語言但又不是 C 語言,他可以實現 java 調用 C++的函數,這個過程需要 Android Runtime(ART) 安卓虛擬機的配合。

在 Native 層中,有很多 C++ 寫的系統服務,供上層使用,比如最重要的ServiceManager,管理所有其他服務的服務。

案例分析

手機 app 想要控制喇叭、LED 等硬件,要從 app 傳遞到 kernel,操作硬件,這個流程要比 Linux 的應用程序復雜得多。并且方式不止一種,舉例:

1、app 通過直接讀寫 kernel 節點,向其寫入數據,這就類似于在 Linux 命令行直接 echo,這是最簡單的方式。因為 java 本身也有文件讀寫函數,有按字節讀寫和字符串讀寫兩種方式。

2、app 的 java 語言調用 JNI 文件,JNI 調用 C 語言,在 C 函數中去操作節點。

3、也可以用 C++ 寫一個 Native 服務,APP 通過 binder 通信訪問這個服務,在這個服務中操作節點。當然 socket 通信也可以。

Android 權限問題

當然,以上所有的操作都需要權限,安卓系統的權限限制的比較嚴格,防止黑客破解。

如果你有 root 權限,那么你可以在安卓系統命令行中輸入 setenforce 0 來關閉Android 系統的 SELinux 檢查機制,那基本上你所有操作都可以被允許。

在 Linux 系統中,安全機制是:我是 root,我派出去的程序訪問任何東西也應該是 root 權限,沒有人可以阻止我。

在 Andorid 系統中,安全機制是:不管你是誰,做任何事情都要提前申請,否則會被 SELinux 檢查,沒有提前申請的行為都會被拒絕,看 log 會發現很多 avc deny。

舉個形象一點的例子:一個公司老板,派他的兒子去自己的公司上班,按理來說是應該類似于 root 權限,誰能擋我?實際上呢,到公司上班可以,因為老板提前說了,但是去衛生間要申請權限,用電腦要申請權限,用打印機要申請權限,除了過來上班,其余任何沒有提前說明的行為都會被拒絕。

這就是 Andorid 系統嚴格的安全機制,防止了黑客破解 root 權限以后亂搞你的手機,比如:內置一個程序,定期訪問你的 xxx 文件,然后通過網絡發出去。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Android
    +關注

    關注

    12

    文章

    3945

    瀏覽量

    127934
  • Linux
    +關注

    關注

    87

    文章

    11345

    瀏覽量

    210396
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62973
  • 系統
    +關注

    關注

    1

    文章

    1019

    瀏覽量

    21429
收藏 人收藏

    評論

    相關推薦

    Android系統文件權限解釋

    眾所周知,安卓是基于linux開發的,因此想要了解android系統文件的權限,需要從Linux說起。  Linux系統權限簡介:  一個文
    發表于 07-10 15:10

    AM335X開發板Android 應用程序獲得system權限的方法

    Android應用程序開發中,有些操作的實現,會發現單純添加了相應的功能語句卻不能實現想要的效果,這個時候就可能是因為這些功能必須使apk有system權限才能操作,這也是Android系統
    發表于 05-20 17:55

    [資料分享]+《Android軟件安全與逆向分析

    `[資料分享]+《Android軟件安全與逆向分析》一、看威武霸氣的封面作者:豐生強 二、讀讀簡介,看看適合你嗎? 本書由淺入深、循序漸進地講解了Android 系統的軟件安全、逆向
    發表于 09-26 10:53

    系統層級靜電放電與芯片層級靜電放電有什么差異

    軍方所制定的人體靜電放電模型最具代表性,又稱之為芯片層級靜電放電測試。而針對終端消費者所使用的電子產品,則以IEC 61000-4-2所制定的人體靜電放電模型為測試主流,這就是一般認知的系統層級靜電放電
    發表于 07-25 06:45

    Android 系統添加SELinux權限

    CPU:RK3288系統Android 5.1SELinux 主要由美國國家安全局開發。2.6 及以上版本的 Linux 內核都已經集成了 SELinux 模塊。通過虛擬文件系統 proc 來讀寫
    發表于 02-09 22:49

    Android Framework電源子系統分析

    系列文章解讀&說明:Android Framework 電源子系統分析主要分為以下部分:Android Framework 電源子系統
    發表于 12-31 06:51

    請問android 7.1應用獲取root權限的方法是什么

    應開發需要,應用軟件需要獲取root權限,請問android7.1.1如何root呢?
    發表于 01-04 06:11

    基于RBAC的統一權限管理系統研究

            通過對當前基于RBAC 模型的各類權限管理系統應用情況的具體分析,指出基于具體需求開發的權限管理
    發表于 09-05 09:03 ?21次下載

    Android內核分析

    介紹Android 移動平臺系統架構,通過對Android 源代碼的分析,將其與標準Linux 內核(2.6.27)源代碼相比較,詳細解析Andro
    發表于 10-29 16:17 ?116次下載

    Android系統權限提升攻擊檢測技術_王聰

    Android系統權限提升攻擊檢測技術_王聰
    發表于 03-19 11:41 ?0次下載

    如何使用權限Android進行應用風險評估方法的資料說明

    針對Android權限機制存在的問題以及傳統的應用風險等級評估方法的不足,提出了一種基于權限Android應用風險評估方法。首先,通過對應用程序進行逆向工程
    發表于 03-28 16:49 ?4次下載
    如何使用<b class='flag-5'>權限</b>的<b class='flag-5'>Android</b>進行應用風險評估方法的資料說明

    如何使用Android權限實現應用風險評估詳細方法說明

    針對Android權限機制存在的問題以及傳統的應用風險等級評估方法的不足,提出了一種基于權限Android應用風險評估方法。首先,通過對應用程序進行逆向工程
    發表于 10-25 16:57 ?4次下載
    如何使用<b class='flag-5'>Android</b>的<b class='flag-5'>權限</b>實現應用風險評估詳細方法說明

    基于權限Android應用風險評估方法

    針對Android權限機制存在的問題以及傳統的應用風險等級評估方法的不足,提出了一種基于權限Android應用風險評估方法。首先,通過對應用程序進行逆向工程
    發表于 07-17 15:55 ?11次下載
    基于<b class='flag-5'>權限</b>的<b class='flag-5'>Android</b>應用風險評估方法

    Android掛載system文件夾讀寫權限

    Android系統中,system文件夾一般都是只讀屬性,無論是root用戶還是普通權限用戶,在Android安全研究或開發過程中
    的頭像 發表于 08-08 09:36 ?1.4w次閱讀
    <b class='flag-5'>Android</b>掛載system文件夾讀寫<b class='flag-5'>權限</b>

    oracle系統權限和對象權限的區別

    Oracle系統權限和對象權限是Oracle數據庫中的兩種不同類型的權限控制機制。雖然它們都是用于限制用戶對數據庫進行操作的權限,但它們的作
    的頭像 發表于 12-05 16:21 ?1220次閱讀
    波音网百家乐官网合作| 百家乐官网电器维修| 太阳城娱乐总站| 澳门百家乐秘诀| 西昌市| 同乐城百家乐娱乐城| 缅甸百家乐官网论坛| 百家乐路单| 百家乐官网小路单图解| 在线水果机游戏| 澳门百家乐娱乐城打不开| 百家乐官网赌博牌路分析| 刚察县| 大发888怎么修改密码| 金城百家乐玩法| 玩百家乐官网的高手| 百家乐官网有破解的吗| 真钱棋牌导航网| 方形百家乐筹码| 百家乐平注法口诀| 百利宫百家乐官网的玩法技巧和规则| 澳门百家乐长赢打| 华容县| 百家乐官网3号眨眼技术| 济州岛娱乐场cns| 大发888新网址| 十三张百家乐的玩法技巧和规则| 百家乐玩家技巧分享| 百家乐赢钱好公式| 百家乐ho168平台| 赌博中百家乐什么意思| 百家乐娱乐城返水| 网上百家乐怎么赌能赢钱| 百家乐国际娱乐场开户注册| 百家乐投注方向| 百家乐筹码价格| 百家乐系统足球博彩通| 百家乐真人游戏投注网| 真人百家乐蓝盾| 日博娱乐城| 百家乐官网无敌直缆|