999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Android系統(tǒng)ADB的使用與數(shù)據(jù)安全

2022-10-17 09:32:30李煥
電子測試 2022年16期
關鍵詞:指令調(diào)試用戶

李煥

(福州匯思博信息技術有限公司,福建廈門,361000)

0 前言

Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),ADB的全稱為Android Debug Bridge,就是起到調(diào)試橋的作用。

ADB本身是Android設備開發(fā)時的調(diào)試工具,但是也可以用來作為管理工具。基本上百度助手、360手機助手、QQ手機助手對手機的管理功能都是通過ADB來實現(xiàn)。ADB的管理功能需要手機打開調(diào)試選項,這為手機管理提供了方便,同時也造成了安全隱患。

當我們打開設備的調(diào)試選項,并使用USB線將設備連接到PC時,不僅僅是手機管理工具可以控制設備,只要調(diào)用ADB命令,任何PC端的程序都可以訪問手機內(nèi)容,那么設備連接到PC后就是在“裸奔",設備中的所有信息都可以被PC端抓取。

由于ADB功能的強大,一些Android設備廠商考慮到安全等因素,他們不希望將此功能輕易開放給用戶使用,但是自己又很需要此功能,所以如果需要保護設備上的私密信息,那么最好謹慎控制用戶ADB的訪問權限。

1 ADB框架

1.1 原生ADB架構

Android ADB(Android Debug Bridge)是一種多功能的命令行工具,可讓用戶與設備通信。ADB命令可用于執(zhí)行各種設備操作(如安裝和調(diào)試應用),并提供Unix shell(可用來在設備上運行各種命令)的訪問權限,是一種客戶端-服務器程序。圖1為ADB的應用結構。

圖1 ADB的應用結構。

(1)我們在PC端使用過adb命令,則會在當前用戶目錄生成一對密鑰,密鑰存放在.android目錄,其中adbkey為私鑰,adbkey.pub為公鑰,通常默認只有一組。

(2)PC adb會把公鑰(adbkey.pub)發(fā)送給android設備來獲取認證,建立adb連接。

(3)android 會根據(jù)屬性ro.adb.secure來判斷,是否進行認證,如果為0,則不需要認證,允許建立adb連接。如果為1,則需要進行密鑰認證。

(4)如果需要進行adb密鑰認證,則把接收到的adbkey.pub與本地的/data/misc/adb/adb_keys進行對比,如果相同,則表明是允許此設備進行adb連接,如果不相同,則彈出對話框,提示用戶是否允許信任usb調(diào)試。

1.2 ADB認證流程

Client為Android設備端服務,Host為PC客戶端應用,交互過程如圖2。

圖2 交互過程

(1)Client向Host發(fā)送AUTH_TOKEN報文,包含源自/dev/urandom的20字節(jié)的隨機token。

(2)Host用自己的私鑰對該隨機token進行簽名(SHA1+RSA),放在發(fā)往Client的AUTH_SIGNATURE報文中。

(3)Client通過已有的adb_keys公鑰檢查簽名,如果正確,響應以CONNECT報文,否則向Host發(fā)送新的AUTH_TOKEN報文,提供新的隨機token。

(4)Host接收到新的AUTH_TOKEN,嘗試用另外一組公私鑰對對該隨機token進行簽名,放在發(fā)往Client的AUTH_SIGNATURE報文中。

(5)如果Host已經(jīng)嘗試完所有公私鑰對,則向Client發(fā)送AUTH_ RSAPUBLICKEY報文,包含一個Host公鑰。Client將Host公鑰發(fā)往framework,后者彈出信息框,詢問是否允許(或永久允許)使用USB調(diào)試接口,該信息框中一般會顯示Host公鑰的指紋(MD5),而不是Host公鑰本身,公鑰保存在/data/misc/adb/adb_keys中。

當最終授權通過時,Client和Host就能成功建立連接。當服務端和客戶端建立連接之后,就可以使用adb命令來控制或者訪問了,用戶可以通過ADB指令對設備進行特定的操作,包括adb shell查看設備信息、logcat、reboot、backup指令等。

1.3 安全隱患

ADB本身是Android設備的調(diào)試工具,同時也可以作為管理工具,當設備打開調(diào)試選項即可用來管理設備,同時也造成了安全隱患。

(1)與PC建立連接過于簡易,用戶可輕松完成設備連接管理。用戶僅需設備打開調(diào)試選項,ADB工具就可以實現(xiàn)查看手機內(nèi)容、向手機寫入文件、給手機安裝軟件等功能,這些都不需要root權限。

(2)指令執(zhí)行風險。adb具有豐富的系統(tǒng)權限以backup/restore為例,Android應用屬性allowBackup安全風險源于adb backup容許任何一個能夠打開USB 調(diào)試開關的人從Android手機中復制應用數(shù)據(jù)到外設,一旦應用數(shù)據(jù)被備份之后,所有應用數(shù)據(jù)都可被用戶讀取;adb restore容許用戶指定一個恢復的數(shù)據(jù)來源(即備份的應用數(shù)據(jù))來恢復應用程序數(shù)據(jù)的創(chuàng)建。因此,當一個應用數(shù)據(jù)被備份之后,用戶即可在其他Android手機或模擬器上安裝同一個應用,以及通過恢復該備份的應用數(shù)據(jù)到該設備上,在該設備上打開該應用即可恢復到被備份的應用程序的狀態(tài)。

2 優(yōu)化措施

2.1 授權優(yōu)化

由上了解了ADB的使用過程后,可知,當Android設備接入PC時,若PC端程序使用adb命令連接Android設備,則Android端會彈出授權窗口,提示PC程序正在嘗試連接Android設備,若用戶選擇始終允許這臺計算機連接Android設備,則意味著PC中的任何軟件(包括惡意軟件)都可通過adb命令連接到Android設備,并通過adb協(xié)議提供的接口訪問Android設備中的數(shù)據(jù),廠商設備的一些私密信息可能會被讀取,導致信息泄露的風險。因此加強ADB權限的授權管控,使得ADB的使用狀態(tài)能夠被廠家所掌控便成為了一種必不可少的措施。如圖3,提供一種網(wǎng)絡+秘鑰的授權方式對ADB使用進行控制。

圖3 一種網(wǎng)絡+秘鑰的授權方式對ADB使用進行控制

(1)Client端收到AUTH_RSAPUBLICKEY通訊指令時,不再是彈出信任請求提示并保存公鑰,而是再次發(fā)起一個認證請求AUTH_TOKEN,內(nèi)容不僅僅是上面提到的/dev/urandom生成的隨機數(shù),還會攜帶一個額外的經(jīng)過預置公鑰加密的參數(shù)信息extra_info用于收集終端設備信息(版本號、SN等)。

(2)Host端收到AUTH_TOKEN指令后,發(fā)現(xiàn)extra_info數(shù)據(jù),收集Host端授權賬號信息(賬號、密碼、MAC地址等),通過聯(lián)網(wǎng)將賬號信息以及extra_info上送授權服務器,服務器檢查賬戶信息,并解密extra_info信息進行設備識別,將加密后的授權結果數(shù)據(jù)發(fā)送給Host端并放在發(fā)往Client的AUTH_SIGNATURE報文中。

其中賬號信息有以下2種方式獲?。?/p>

從廠商內(nèi)部人員的Ukey設備獲取;

非廠商人員通過廠商渠道申請臨時賬號密碼,放置在PC指定目錄。

(3)Clint端接收到AUTH_SIGNATURE報文中數(shù)據(jù),本地做解密認證授權結果,根據(jù)結果開放ADB相對應的功能。

如上在原生的認證流程上,對于ADB的授權采用聯(lián)網(wǎng)+秘鑰的方式,不但可以根據(jù)不同需求人群進行權限管控,同時可以獲取每臺設備的狀態(tài),這樣就可以使得ADB的使用得到有效的管理,從而有效禁止非法程序訪問Android設備端的文件數(shù)據(jù),提高了Android設備端數(shù)據(jù)的安全性。

2.2 指令優(yōu)化

ADB常用指令如表1。

表1 ADB 常用指令

表2 指令

如上,針對不同的指令不同的作用,可以對指令做適當?shù)膬?yōu)化或者直接屏蔽指令的方式來限制指令的使用。

Android 的內(nèi)核本身就是Linux,所以Android本身也支持Linux指令,通過adb shell指令,可以是用戶已shell的身份對Android設備進行訪問,因此對shell的使用管控顯得格外重要。對于安全保密性要求較高的Android設備,在版本發(fā)放時建議以屏蔽shell指令或者根據(jù)使用者身份賦予shell指令使用權限會更加可靠與安全。

3 結束語

借助ADB工具, 我們可以管理Android設備的狀態(tài),還可以進行很多控制操作,比如安裝軟件,系統(tǒng)升級,運行shell命令等等, 其實簡而言之,ADB就是連接Android手機與PC端的橋梁,可以讓用戶在電腦上對設備進行全面的操作。ADB為用戶設備的管理帶來方便的同時也帶來許多潛在的安全風險。對于廠商和用戶,如何平衡廠商和用戶的ADB功能使用,又能滿足各自的使用需求顯得格外的重要。本文闡述了Android ADB的框架和一些針對安全訪問的策略機制,探討ADB定制上的可能性和安全性,希望能為廣大Android工作者和愛好者提供有效的幫助。

猜你喜歡
指令調(diào)試用戶
聽我指令:大催眠術
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產(chǎn)品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
基于航拍無人機的設計與調(diào)試
電子制作(2018年12期)2018-08-01 00:47:44
FOCAS功能在機床調(diào)試中的開發(fā)與應用
無線通信中頻線路窄帶臨界調(diào)試法及其應用
電子制作(2017年19期)2017-02-02 07:08:38
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
調(diào)壓柜的調(diào)試與試運行探討
主站蜘蛛池模板: 亚洲无线一二三四区男男| 五月婷婷丁香综合| 欧美爱爱网| 特级做a爰片毛片免费69| 99精品在线视频观看| 亚洲香蕉伊综合在人在线| 日韩精品成人在线| 91精品人妻互换| 国产91视频免费观看| 伊人成色综合网| 国产理论一区| 九色综合视频网| 91精品免费高清在线| 亚洲大学生视频在线播放| 一级香蕉人体视频| 国产打屁股免费区网站| 无码精品国产dvd在线观看9久| 小13箩利洗澡无码视频免费网站| 中国丰满人妻无码束缚啪啪| 亚洲 欧美 偷自乱 图片| 在线观看av永久| 国产精品无码作爱| 免费一级成人毛片| 99热这里只有成人精品国产| 在线国产综合一区二区三区| 思思99思思久久最新精品| 亚洲无码视频喷水| 国产精品视屏| 一本大道无码高清| 精品国产免费观看一区| 国产欧美日韩另类精彩视频| 最新国产精品第1页| 性喷潮久久久久久久久| 欧美日韩激情在线| 亚洲一区二区三区香蕉| 熟妇丰满人妻av无码区| 国产成人区在线观看视频| 欧美中文字幕一区| 国产永久免费视频m3u8| 97成人在线视频| jizz在线观看| 国产欧美日韩18| 日韩欧美国产三级| 亚洲一区二区黄色| 97国产在线播放| 毛片在线区| 欧美精品伊人久久| 久久综合色88| 国产女人在线视频| 毛片手机在线看| 亚洲福利一区二区三区| 性色一区| 久久亚洲国产最新网站| 国产在线自揄拍揄视频网站| 亚洲成a∧人片在线观看无码| 国产精品视频白浆免费视频| 99这里精品| a亚洲天堂| 97色伦色在线综合视频| 99视频在线观看免费| 国产人成在线视频| 在线视频精品一区| 毛片基地美国正在播放亚洲| 亚洲人成网站在线播放2019| 波多野结衣一区二区三区四区视频| 欧美午夜网站| 亚洲an第二区国产精品| 免费人成又黄又爽的视频网站| 国精品91人妻无码一区二区三区| 欧美国产在线看| 国产无码高清视频不卡| 精品人妻无码中字系列| 亚洲精品人成网线在线| 在线播放国产99re| 日韩欧美中文字幕在线韩免费| 亚洲国产日韩一区| 亚洲天堂精品视频| 亚洲综合中文字幕国产精品欧美| 大学生久久香蕉国产线观看| 国产白浆视频| 日本免费精品| 亚洲国产成人在线|