獲取本機(jī)Root權(quán)限的方法和裝置制造方法
【專利摘要】本發(fā)明公開(kāi)一種獲取本機(jī)Root權(quán)限的方法,包括如下步驟:獲取是否有適用于本機(jī)特征信息的用于獲取本機(jī)Root權(quán)限的配置信息的應(yīng)答;當(dāng)該應(yīng)答指示有適用于獲取本機(jī)Root權(quán)限的配置信息時(shí),利用與該配置信息相關(guān)的本機(jī)存儲(chǔ)的方案文件對(duì)本機(jī)實(shí)施提權(quán);當(dāng)利用本機(jī)存儲(chǔ)的方案文件提權(quán)失敗時(shí),以應(yīng)答方提供的配置信息所指向的方案文件對(duì)本機(jī)實(shí)施提權(quán);向應(yīng)答方反饋已據(jù)以實(shí)施提權(quán)的配置信息是否成功提權(quán)的結(jié)果數(shù)據(jù)。此外,本發(fā)明還相應(yīng)提供一種獲取本機(jī)Root權(quán)限的裝置。概括而言,本發(fā)明實(shí)現(xiàn)了終端設(shè)備對(duì)自身獲取Root權(quán)限的更為有效的解決方案,不僅提高了終端設(shè)備獲取自身Root權(quán)限的成功率,還能節(jié)省流量。
【專利說(shuō)明】獲取本機(jī)Root權(quán)限的方法和裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及智能設(shè)備的系統(tǒng)權(quán)限管理控制技術(shù),具體涉及一種獲取本機(jī)Root權(quán) 限的方法和裝置。
【背景技術(shù)】
[0002] 眾所周知,Root權(quán)限是指Unix類操作系統(tǒng)(包括Linux、Android)的系統(tǒng)管理員 權(quán)限,類似于Windows(視窗)系統(tǒng)中的Administrator(管理員)權(quán)限;Root權(quán)限可以訪 問(wèn)和修改用戶的移動(dòng)設(shè)備中幾乎所有的文件(Android系統(tǒng)文件及用戶文件,不包括ROM)。 但是,由于目前移動(dòng)終端系統(tǒng)對(duì)于Root權(quán)限的管理是非常嚴(yán)格的,通常情況下多數(shù)應(yīng)用或 程序都不具備Root權(quán)限,因此對(duì)于某些需要具備Root權(quán)限的操作就無(wú)法執(zhí)行,例如安裝或 卸載應(yīng)用等操作;同時(shí),此類操作調(diào)用進(jìn)程每次執(zhí)行相應(yīng)操作時(shí)都需要向系統(tǒng)申請(qǐng)Root權(quán) 限,但如果此時(shí)其他應(yīng)用進(jìn)程正在使用Root權(quán)限進(jìn)行相關(guān)操作,則此調(diào)用進(jìn)程的Root權(quán)限 申請(qǐng)便無(wú)法成功;更甚者,如果用戶在系統(tǒng)中設(shè)置了禁用Root權(quán)限的操作,則相關(guān)調(diào)用進(jìn) 程便無(wú)法進(jìn)行相關(guān)操作。
[0003] 用戶一般都想獲得自身終端設(shè)備的更廣泛的控制權(quán),有鑒于此,業(yè)內(nèi)提供了多種 多樣的提權(quán)方案用于獲取Android系統(tǒng)的Root權(quán)限,實(shí)現(xiàn)用戶權(quán)限提升,達(dá)致全面控制操 作系統(tǒng)的目的。這些提權(quán)方案,依提權(quán)后權(quán)限作用的生命周期來(lái)看,包括永久Root權(quán)限和 臨時(shí)Root權(quán)限,顧名思義,永久Root權(quán)限情況下,應(yīng)用程序一經(jīng)Root授權(quán),以后可不必再 進(jìn)行Root提權(quán)操作;而臨時(shí)Root權(quán)限情況下,權(quán)限作用的生命周期只是操作系統(tǒng)的一次從 開(kāi)機(jī)到關(guān)機(jī)的過(guò)程,下次開(kāi)機(jī)依然需要進(jìn)行Root。
[0004] 無(wú)論采用何種Root方式,提權(quán)的基本原理均是通過(guò)向系統(tǒng)植入用于接收權(quán)限請(qǐng) 求的SU,再結(jié)合SuperUser.apk應(yīng)用程序?qū)崿F(xiàn)人機(jī)交互,通過(guò)SU與SuperUser.apk在運(yùn)行 時(shí)的相互配合,來(lái)實(shí)現(xiàn)有效的權(quán)限管理。但是,由于移動(dòng)終端設(shè)備的Android版本號(hào)、內(nèi)核 版本號(hào)、CPU型號(hào)、機(jī)型等信息的不同,導(dǎo)致這些不同的原因可能是在系統(tǒng)0TA或者系統(tǒng)升 級(jí),進(jìn)一步往往導(dǎo)致su模塊甚至SuperUser的代碼、參數(shù)甚至原理等也必須做出適應(yīng)性改 變才能實(shí)現(xiàn)Root提權(quán),因此,同一種型號(hào)的手機(jī)因其內(nèi)核版本號(hào)或者系統(tǒng)版本號(hào)的不同, 也可能需要不同的Root方案。此類Root方案,實(shí)際上便是適應(yīng)移動(dòng)終端設(shè)備的上述參數(shù) 的變化而定制的用于對(duì)該移動(dòng)終端獲取Root權(quán)限以試圖實(shí)現(xiàn)提權(quán)的配置信息。這些配置 信息可以是在Root方案所需的文件的基礎(chǔ)上,進(jìn)一步結(jié)合相關(guān)運(yùn)行參數(shù)配置而得,也可以 是直接包含所述方案文件的指向信息如其URL或文件名,不管配置信息的實(shí)現(xiàn)形式如何, 只要該配置信息能夠被使用它的程序正確解析并使用即可。利用好這些配置信息,便能更 商效地實(shí)現(xiàn)系統(tǒng)提權(quán)。
[0005] 目前市面上推出多種一鍵Root應(yīng)用程序,一般安裝于個(gè)人電腦上,通過(guò)USB線與 手機(jī)建立連接,從云端下載與該手機(jī)相適應(yīng)的配置信息,也即相應(yīng)的用于實(shí)現(xiàn)獲取Root權(quán) 限的方案,強(qiáng)行對(duì)該手機(jī)進(jìn)行獲取Root的操作,以期獲得成功。然而,這種傳統(tǒng)的獲取Root 權(quán)限的方式,依賴于電腦設(shè)備,用戶使用不便。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的在于解決上述問(wèn)題,而提供一種獲取本機(jī)Root權(quán)限的方法和裝置。
[0007] 為實(shí)現(xiàn)本發(fā)明的目的,本發(fā)明采取如下技術(shù)方案:
[0008] 本發(fā)明提供的一種獲取本機(jī)Root權(quán)限的方法,包括如下步驟:
[0009] 獲取是否有適用于本機(jī)特征信息的用于獲取本機(jī)Root權(quán)限的配置信息的應(yīng)答;
[0010] 當(dāng)該應(yīng)答指示有適用于獲取本機(jī)Root權(quán)限的配置信息時(shí),利用與該配置信息相 關(guān)的本機(jī)存儲(chǔ)的方案文件對(duì)本機(jī)實(shí)施提權(quán);
[0011] 當(dāng)利用本機(jī)存儲(chǔ)的方案文件提權(quán)失敗時(shí),以應(yīng)答方提供的配置信息所指向的方案 文件對(duì)本機(jī)實(shí)施提權(quán);
[0012] 向應(yīng)答方反饋已據(jù)以實(shí)施提權(quán)的配置信息是否成功提權(quán)的結(jié)果數(shù)據(jù)。
[0013] 具體的,所述特征信息包括機(jī)型、系統(tǒng)版本號(hào)、內(nèi)核版本號(hào)、CPU型號(hào)中一種或任意 多種。
[0014] 較佳的,所述應(yīng)答方提供的配置信息被格式化在推薦列表中,該推薦列表包含一 個(gè)或多個(gè)配置信息。
[0015] 具體的,所述推薦列表,包含于所述應(yīng)答之中,或者,在利用本機(jī)方案文件提權(quán)失 敗之后,由本機(jī)向應(yīng)答方發(fā)起請(qǐng)求而獲得。
[0016] 較佳的,所述推薦列表中的配置信息包含用于獲取Root方案文件的指向信息,該 指向信息指向本機(jī)存儲(chǔ)的方案文件或?yàn)檫h(yuǎn)程方案文件鏈接。
[0017] 進(jìn)一步,以應(yīng)答方提供的配置信息所指向的方案文件實(shí)施提權(quán)的過(guò)程中,先利用 應(yīng)答方提供的配置信息中的指向信息獲取遠(yuǎn)程方案文件并緩存于本機(jī),然后以該方案文件 實(shí)施提權(quán)。
[0018] 較佳的,所述本機(jī)存儲(chǔ)的方案文件,包括曾在本機(jī)成功獲取Root權(quán)限的已緩存的 方案文件及預(yù)存儲(chǔ)的方案文件。
[0019] 進(jìn)一步,利用本機(jī)存儲(chǔ)的方案文件對(duì)所述終端設(shè)備實(shí)施提權(quán)時(shí),優(yōu)先使用曾在本 機(jī)成功獲取Root權(quán)限的已緩存的方案文件。
[0020] 較佳的,所述曾在本機(jī)成功獲取Root權(quán)限的已緩存的方案文件存儲(chǔ)于本機(jī)第一 路徑,所述預(yù)存儲(chǔ)的方案文件存儲(chǔ)于本機(jī)第二路徑。
[0021] 具體的,所述結(jié)果數(shù)據(jù)包括本機(jī)特征信息、已被實(shí)施提權(quán)的配置信息以及表征該 配置信息指向的方案文件是否成功獲取本機(jī)Root權(quán)限的信息。
[0022] 本發(fā)明提供的一種獲取本機(jī)Root權(quán)限的裝置,包括:
[0023] 獲取單元,用于獲取是否有適用于本機(jī)特征信息的用于獲取本機(jī)Root權(quán)限的配 置信息的應(yīng)答;
[0024] 提權(quán)單元,被配置為當(dāng)該應(yīng)答指示有適用于獲取本機(jī)Root權(quán)限的配置信息時(shí),利 用與該配置信息相關(guān)的本機(jī)存儲(chǔ)的方案文件對(duì)本機(jī)實(shí)施提權(quán);當(dāng)利用本機(jī)存儲(chǔ)的方案文件 提權(quán)失敗時(shí),以應(yīng)答方提供的配置信息所指向的方案文件對(duì)本機(jī)實(shí)施提權(quán);
[0025] 反饋單元,用于向應(yīng)答方反饋已據(jù)以實(shí)施提權(quán)的配置信息是否成功提權(quán)的結(jié)果數(shù) 據(jù)。
[0026] 較佳的,所述特征信息包括機(jī)型、系統(tǒng)版本號(hào)、內(nèi)核版本號(hào)、CPU型號(hào)中一種或任意 多種。
[0027] 進(jìn)一步,所述應(yīng)答方提供的配置信息被格式化在推薦列表中,該推薦列表包含一 個(gè)或多個(gè)配置信息。
[0028] 具體的,所述推薦列表,包含于所述應(yīng)答之中,或者,在利用本機(jī)方案文件提權(quán)失 敗之后,由本機(jī)向應(yīng)答方發(fā)起請(qǐng)求而獲得。
[0029] 較佳的,所述推薦列表中的配置信息包含用于獲取Root方案文件的指向信息,該 指向信息指向本機(jī)存儲(chǔ)的方案文件或?yàn)檫h(yuǎn)程方案文件鏈接。
[0030] 進(jìn)一步,所述的提權(quán)單元,被配置為在以應(yīng)答方提供的配置信息所指向的方案文 件實(shí)施提權(quán)的過(guò)程中,先利用應(yīng)答方提供的配置信息中的指向信息獲取遠(yuǎn)程方案文件并緩 存于本機(jī),然后以該方案文件實(shí)施提權(quán)。
[0031] 較佳的,所述本機(jī)存儲(chǔ)的方案文件,包括曾在本機(jī)成功獲取Root權(quán)限的已緩存的 方案文件及預(yù)存儲(chǔ)的方案文件。
[0032] 進(jìn)一步,所述提權(quán)單元還被配置為,在利用本機(jī)存儲(chǔ)的方案文件對(duì)所述終端設(shè)備 實(shí)施提權(quán)時(shí),優(yōu)先使用曾在本機(jī)成功獲取Root權(quán)限的已緩存的方案文件。
[0033] 較佳的,所述曾在本機(jī)成功獲取Root權(quán)限的已緩存的方案文件存儲(chǔ)于本機(jī)第一 路徑,所述預(yù)存儲(chǔ)的方案文件存儲(chǔ)于本機(jī)第二路徑。
[0034] 具體的,所述結(jié)果數(shù)據(jù)包括本機(jī)特征信息、已被實(shí)施提權(quán)的配置信息以及表征該 配置信息指向的方案文件是否成功獲取本機(jī)Root權(quán)限的信息。
[0035] 相較于現(xiàn)有技術(shù),本發(fā)明至少具有如下優(yōu)點(diǎn):
[0036] 1、本發(fā)明根據(jù)一般終端設(shè)備在性能上略有不足的特點(diǎn),實(shí)現(xiàn)瘦客戶端方案,通過(guò) 本地將部分通用方案文件預(yù)存儲(chǔ)在本機(jī),然后借助遠(yuǎn)程支持,由云端服務(wù)器確認(rèn)其數(shù)據(jù)庫(kù) 中是否有相關(guān)方案文件配置信息已被成功用于獲取Root權(quán)限的信息,向客戶端返回相應(yīng) 的應(yīng)答,客戶端優(yōu)先考慮已經(jīng)預(yù)存在本機(jī)的方案文件嘗試對(duì)自身獲取Root權(quán)限,當(dāng)這一操 作失敗后,再采用服務(wù)器包含于所述應(yīng)用或者另行提供的配置信息所指向的方案文件對(duì)本 機(jī)實(shí)施提權(quán)。由于預(yù)存的方案文件可以優(yōu)選具有較高成功率(獲取Root權(quán)限)的方案文 件,這一實(shí)現(xiàn)邏輯便簡(jiǎn)化了終端設(shè)備的流量負(fù)荷,使得諸如手機(jī)、平板電腦之類的終端設(shè)備 在本機(jī)上實(shí)現(xiàn)一鍵Root功能變得更為可行。
[0037] 2、本發(fā)明的結(jié)果數(shù)據(jù),是基于終端設(shè)備中每條配置信息被試Root以后形成的,且 關(guān)聯(lián)到終端設(shè)備的特征信息,也即機(jī)型、系統(tǒng)版本號(hào)、內(nèi)核版本號(hào)、CPU型號(hào)等數(shù)據(jù),該結(jié)果 數(shù)據(jù)被客戶終端發(fā)送給應(yīng)答方,也即云端服務(wù)器,因此,云端服務(wù)器得以依據(jù)該結(jié)果數(shù)據(jù)對(duì) 各種配置信息是否可用進(jìn)行統(tǒng)計(jì),以便為其他客戶端提供更為精確的計(jì)算結(jié)果。
[0038] 概括而言,本發(fā)明實(shí)現(xiàn)了終端設(shè)備對(duì)自身獲取Root權(quán)限的更為有效的解決方案, 不僅提高了終端設(shè)備獲取自身Root權(quán)限的成功率,還能節(jié)省流量。
[0039] 本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,這些將從下面的描述中變 得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
【專利附圖】
【附圖說(shuō)明】
[0040] 本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變 得明顯和容易理解,其中 :
[0041] 圖1是利用本發(fā)明的整體構(gòu)思所構(gòu)造的系統(tǒng)的結(jié)構(gòu)原理圖;
[0042] 圖2是本發(fā)明的提權(quán)配置信息反饋裝置的結(jié)構(gòu)原理圖;
[0043] 圖3是本發(fā)明的獲取本機(jī)Root權(quán)限的方法的流程示意圖;
[0044] 圖4是本發(fā)明的獲取本機(jī)Root權(quán)限的裝置的結(jié)構(gòu)原理圖。
【具體實(shí)施方式】
[0045] 下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終 相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過(guò)參考附 圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對(duì)本發(fā)明的限制。
[0046] 本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,除非特意聲明,這里使用的單數(shù)形式"一"、"一 個(gè)"、"所述"和"該"也可包括復(fù)數(shù)形式。應(yīng)該進(jìn)一步理解的是,本發(fā)明的說(shuō)明書(shū)中使用的措 辭"包括"是指存在所述特征、整數(shù)、步驟、操作、元件和/或組件,但是并不排除存在或添加 一個(gè)或多個(gè)其他特征、整數(shù)、步驟、操作、元件、組件和/或它們的組。應(yīng)該理解,當(dāng)我們稱元 件被"連接"或"耦接"到另一元件時(shí),它可以直接連接或耦接到其他元件,或者也可以存在 中間元件。此外,這里使用的"連接"或"耦接"可以包括無(wú)線連接或無(wú)線耦接。這里使用 的措辭"和/或"包括一個(gè)或更多個(gè)相關(guān)聯(lián)的列出項(xiàng)的全部或任一單元和全部組合。
[0047] 本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,除非另外定義,這里使用的所有術(shù)語(yǔ)(包括技術(shù) 術(shù)語(yǔ)和科學(xué)術(shù)語(yǔ)),具有與本發(fā)明所屬領(lǐng)域中的普通技術(shù)人員的一般理解相同的意義。還應(yīng) 該理解的是,諸如通用字典中定義的那些術(shù)語(yǔ),應(yīng)該被理解為具有與現(xiàn)有技術(shù)的上下文中 的意義一致的意義,并且除非像這里一樣被特定定義,否則不會(huì)用理想化或過(guò)于正式的含 義來(lái)解釋。
[0048] 本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,這里所使用的"終端"、"終端設(shè)備"既包括無(wú)線信 號(hào)接收器的設(shè)備,其僅具備無(wú)發(fā)射能力的無(wú)線信號(hào)接收器的設(shè)備,又包括接收和發(fā)射硬件 的設(shè)備,其具有能夠在雙向通信鏈路上,執(zhí)行雙向通信的接收和發(fā)射硬件的設(shè)備。這種設(shè) 備可以包括:蜂窩或其他通信設(shè)備,其具有單線路顯示器或多線路顯示器或沒(méi)有多線路顯 示器的蜂窩或其他通信設(shè)備;PCS(PersonalCommunicationsService,個(gè)人通信系統(tǒng)),其 可以組合語(yǔ)音、數(shù)據(jù)處理、傳真和/或數(shù)據(jù)通信能力;PDA(PersonalDigitalAssistant,個(gè) 人數(shù)字助理),其可以包括射頻接收器、尋呼機(jī)、互聯(lián)網(wǎng)/內(nèi)聯(lián)網(wǎng)訪問(wèn)、網(wǎng)絡(luò)瀏覽器、記事本、 日歷和/或GPS(GlobalPositioningSystem,全球定位系統(tǒng))接收器;常規(guī)膝上型和/或 掌上型計(jì)算機(jī)或其他設(shè)備,其具有和/或包括射頻接收器的常規(guī)膝上型和/或掌上型計(jì)算 機(jī)或其他設(shè)備。這里所使用的"終端"、"終端設(shè)備"可以是便攜式、可運(yùn)輸、安裝在交通工具 (航空、海運(yùn)和/或陸地)中的,或者適合于和/或配置為在本地運(yùn)行,和/或以分布形式, 運(yùn)行在地球和/或空間的任何其他位置運(yùn)行。這里所使用的"終端"、"終端設(shè)備"還可以是 通信終端、上網(wǎng)終端、音樂(lè)/視頻播放終端,例如可以是PDA、MID(Mobi1eInternetDevice, 移動(dòng)互聯(lián)網(wǎng)設(shè)備)和/或具有音樂(lè)/視頻播放功能的移動(dòng)電話,也可以是智能電視、機(jī)頂盒 等設(shè)備。
[0049] 本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,這里所使用的服務(wù)器、云端、遠(yuǎn)端網(wǎng)絡(luò)設(shè)備等概 念,具有等同效果,其包括但不限于計(jì)算機(jī)、網(wǎng)絡(luò)主機(jī)、單個(gè)網(wǎng)絡(luò)服務(wù)器、多個(gè)網(wǎng)絡(luò)服務(wù)器集 或多個(gè)服務(wù)器構(gòu)成的云。在此,云由基于云計(jì)算(CloudComputing)的大量計(jì)算機(jī)或網(wǎng)絡(luò) 服務(wù)器構(gòu)成,其中,云計(jì)算是分布式計(jì)算的一種,由一群松散耦合的計(jì)算機(jī)集組成的一個(gè)超 級(jí)虛擬計(jì)算機(jī)。本發(fā)明的實(shí)施例中,遠(yuǎn)端網(wǎng)絡(luò)設(shè)備、終端設(shè)備與WNS服務(wù)器之間可通過(guò)任何 通信方式實(shí)現(xiàn)通信,包括但不限于,基于3GPP、LTE、WIMAX的移動(dòng)通信、基于TCP/IP、UDP協(xié) 議的計(jì)算機(jī)網(wǎng)絡(luò)通信以及基于藍(lán)牙、紅外傳輸標(biāo)準(zhǔn)的近距無(wú)線傳輸方式。
[0050] 本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明所稱的"應(yīng)用"、"應(yīng)用程序"、"應(yīng)用軟件"以及類 似表述的概念,是業(yè)內(nèi)技術(shù)人員所公知的相同概念,是指由一系列計(jì)算機(jī)指令及相關(guān)數(shù)據(jù) 資源有機(jī)構(gòu)造的適于電子運(yùn)行的計(jì)算機(jī)軟件。除非特別指定,這種命名本身不受編程語(yǔ)言 種類、級(jí)別,也不受其賴以運(yùn)行的操作系統(tǒng)或平臺(tái)所限制。理所當(dāng)然地,此類概念也不受任 何形式的終端所限制。
[0051] 為了說(shuō)明本發(fā)明的實(shí)施,本發(fā)明試圖結(jié)合計(jì)算機(jī)程序的靜態(tài)和動(dòng)態(tài)兩個(gè)方面進(jìn)行 描述,所謂靜態(tài)方面,是指程序安裝包、文件、數(shù)據(jù)庫(kù)等存儲(chǔ)于媒介的存儲(chǔ)對(duì)象;所謂動(dòng)態(tài)方 面,是指被調(diào)入內(nèi)存中執(zhí)行的動(dòng)態(tài)對(duì)象,包括但不局限于進(jìn)程、線程、所用到的數(shù)據(jù)等。鑒于 計(jì)算機(jī)軟件技術(shù)的這些特點(diǎn),不應(yīng)將本發(fā)明所述及的各個(gè)方法、步驟、子步驟、裝置、單元、 模塊等,孤立地理解為僅靜態(tài)或僅動(dòng)態(tài)的方面,本領(lǐng)域技術(shù)人員對(duì)此應(yīng)當(dāng)知曉。故而,本領(lǐng) 域技術(shù)人員應(yīng)當(dāng)能夠依據(jù)本發(fā)明有關(guān)靜態(tài)的表述而將其對(duì)應(yīng)到動(dòng)態(tài)的進(jìn)程活動(dòng),或者依據(jù) 本發(fā)明有關(guān)動(dòng)態(tài)的進(jìn)程活動(dòng)對(duì)應(yīng)到其靜態(tài)的表現(xiàn)形式,建立起靜態(tài)與動(dòng)態(tài)兩方面的必然性 關(guān)聯(lián),以此為基礎(chǔ)來(lái)理解本發(fā)明。
[0052] 本發(fā)明將涉及對(duì)Android終端設(shè)備的Root提權(quán)操作,但也不應(yīng)局限于Android操 作系統(tǒng),本領(lǐng)域技術(shù)人員可以合理預(yù)見(jiàn),諸如Ubuntu、Linux之類的操作系統(tǒng),只要其權(quán)限 管理破解機(jī)制與Android相同,理論上即可適用本發(fā)明所構(gòu)思的所有方案,因此,本領(lǐng)域技 術(shù)人員應(yīng)當(dāng)知曉此一應(yīng)用上的變通。
[0053] 涉及Root提權(quán)操作的技術(shù)原理,也已在【背景技術(shù)】部分介紹,Root的過(guò)程其實(shí)就 是把SU文件放到/system/bin/中,把Superuser,apk放到system/app下面,前者用于 監(jiān)聽(tīng)用戶的權(quán)限請(qǐng)求并與后者通信,后者主要是在與前者通信的基礎(chǔ)上實(shí)現(xiàn)人機(jī)交互,從 而允許用戶做出相關(guān)指示。理論上,如果su可以實(shí)現(xiàn)為可以默認(rèn)通過(guò)所有權(quán)限請(qǐng)求,則 SuperUser.apk甚至可以舍棄。此外還需要設(shè)置/system/bin/su可以讓任意用戶可運(yùn)行, 使其具有有setuid和setgid的權(quán)限,具體可通過(guò)在android機(jī)器上運(yùn)行命令:adbshell chmod4755/system/bin/su便可實(shí)現(xiàn)。當(dāng)然,也不排除本領(lǐng)域技術(shù)人員利用操作系統(tǒng)的變 化例如其新版本或者經(jīng)人為修改的出廠設(shè)定等,而使得破解機(jī)制有所變化。然而,不管這些 破解機(jī)制如何變化,破解過(guò)程中所涉的數(shù)據(jù),無(wú)非借助代碼文件及運(yùn)行這些文件之類的配 置參數(shù)形成新的破解方案,本領(lǐng)域技術(shù)人員完全可以理解,這些破解方案可以被整合并概 括為本發(fā)明的用于獲取Root權(quán)限的方案文件。因此,對(duì)本發(fā)明方案文件的理解,應(yīng)理解為 涵蓋所有能夠用于獲取具有權(quán)限管理功能的操作系統(tǒng)的最高權(quán)限的破解手段相關(guān)的代碼 文件及其配置參數(shù),以及這些代碼文件和配置參數(shù)的整合體,而不僅僅局限于上述以"su"、 "SuperUser.apk"命名或?qū)崿F(xiàn)的個(gè)別文件。任何最小化解釋本發(fā)明的方案文件的企圖均應(yīng) 被視為未超脫本發(fā)明的精神實(shí)質(zhì)范圍。
[0054] 如前所述,本發(fā)明所采用的概念"配置信息",可以僅指前述用于獲取Root權(quán)限的 方案文件,也可以是在Root方案文件的基礎(chǔ)上,進(jìn)一步結(jié)合相關(guān)運(yùn)行參數(shù)配置而得,還可 以是僅包含所述方案文件的指向信息如其URL或文件名的數(shù)據(jù),不管配置信息的實(shí)現(xiàn)形式 如何,只要該配置信息能夠被使用它的用于實(shí)施Root提權(quán)操作的程序(進(jìn)程)對(duì)應(yīng)正確解 析正常使用即可。應(yīng)當(dāng)知曉,當(dāng)配置信息包含的是指向信息的文件名時(shí),應(yīng)當(dāng)從本機(jī)中獲取 相應(yīng)的方案文件,當(dāng)是指向信息的鏈接時(shí),應(yīng)當(dāng)利用相應(yīng)的URL從遠(yuǎn)程下載方案文件適用 之。也就是說(shuō),配置信息的格式,完全可以由本領(lǐng)域技術(shù)人員在進(jìn)程軟件實(shí)現(xiàn)時(shí),依照一定 的協(xié)議進(jìn)行規(guī)定,只要在使用的過(guò)程中,遵守同一協(xié)議進(jìn)行正向或反向的對(duì)應(yīng)處理即可。利 用好這些配置信息,便能更高效地實(shí)現(xiàn)系統(tǒng)提權(quán)。
[0055] 本發(fā)明以下即將進(jìn)行的描述,將基于一個(gè)網(wǎng)絡(luò)環(huán)境所構(gòu)造的系統(tǒng)進(jìn)行,如圖1所 示,該系統(tǒng)包括云端服務(wù)器81、終端設(shè)備82,終端設(shè)備82也即與服務(wù)器81通信的客戶端 82,客戶端82安裝有例如"360 -鍵Root"應(yīng)用程序,該應(yīng)用程序?qū)崿F(xiàn)了本發(fā)明的一個(gè)方面 即有關(guān)獲取本機(jī)Root權(quán)限的方法和裝置的構(gòu)思,服務(wù)器81上實(shí)現(xiàn)了本發(fā)明的與該獲取方 法和裝置相應(yīng)的反饋方法和裝置的構(gòu)思,而終端設(shè)備82則主要適用于諸如運(yùn)行Android操 作系統(tǒng)的手機(jī)、平板電腦、電子閱讀器等。終端設(shè)備82可以接入互聯(lián)網(wǎng)以與云端服務(wù)器81 建立通信連接。
[0056] 首先,為便于說(shuō)明本發(fā)明所要實(shí)現(xiàn)的終端設(shè)備上的功能和效果,揭示本發(fā)明在該 系統(tǒng)的云端服務(wù)器81的具體實(shí)現(xiàn),藉此揭示本發(fā)明的一種提權(quán)配置信息反饋方法和裝置 的實(shí)施例。本發(fā)明的提權(quán)配置信息反饋方法及本發(fā)明的提權(quán)配置信息反饋裝置,具有一一 對(duì)應(yīng)性,后者是前者的模塊化實(shí)現(xiàn),因此,為說(shuō)明的簡(jiǎn)化,以下部分文字結(jié)合融合了該方法 和裝置進(jìn)行說(shuō)明。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解這種文字上的變通,不應(yīng)視以下的描述為限制 了方法和裝置的獨(dú)立性。
[0057] 請(qǐng)參閱圖2所示的本發(fā)明的提權(quán)配置信息反饋裝置的原理框圖,該圖揭示該裝置 包括獲取單元11、查找單元12、排序單元13、推送單元14、采集單元15以及更新單元16。
[0058] 所述的獲取單元11,用于獲取包含終端設(shè)備82自身的特征信息的請(qǐng)求。所述請(qǐng)求 由終端設(shè)備82發(fā)送,所述特征信息即是終端設(shè)備82的特征信息。這里所稱的請(qǐng)求,可能包 含一個(gè)或多個(gè),其中之一必有終端設(shè)備82請(qǐng)求服務(wù)器81返回其數(shù)據(jù)庫(kù)中是否含有適用于 該特征信息的配置信息的內(nèi)容,另一則可能包含終端設(shè)備82請(qǐng)求服務(wù)器向其提供適于終 端設(shè)備82特征信息的用于獲取Root權(quán)限的配置信息的內(nèi)容。本發(fā)明可以通過(guò)多種實(shí)施例 處理這兩個(gè)請(qǐng)求的關(guān)系,既可以將兩個(gè)請(qǐng)求合二為一,又可以將這兩個(gè)請(qǐng)求分別獨(dú)立,甚至 可以忽略后一請(qǐng)求,在前一請(qǐng)求發(fā)起時(shí),服務(wù)器即默認(rèn)為既向終端設(shè)備82提供是否含有相 關(guān)配置信息的應(yīng)答,同時(shí)也將其它推薦的配置信息包含到同一應(yīng)答中。不管按何種方式實(shí) 施,只要終端設(shè)備82的相關(guān)應(yīng)用程序與服務(wù)器遵守同一協(xié)議解釋該服務(wù)器的應(yīng)答內(nèi)容即 可對(duì)該應(yīng)答進(jìn)行有效利用。
[0059] 所述的特征信息,包括機(jī)型、系統(tǒng)版本號(hào)、內(nèi)核版本號(hào)、CPU型號(hào)中一種或任意多 種。終端設(shè)備82具有諸多特征信息,并不局限于這里所列的幾種。本實(shí)施例選定特征信息 的標(biāo)準(zhǔn),是以利用這些信息可以識(shí)別終端設(shè)備82的用于獲取其系統(tǒng)的Root權(quán)限的配置信 息為準(zhǔn)。因此,特征信息的選定是非常靈活的,譬如,利用移動(dòng)終端的SN號(hào)和頂EI號(hào)識(shí)別 其出廠時(shí)指向的狀態(tài)(如廠商、產(chǎn)地、銷售區(qū)域等),利用移動(dòng)終端的機(jī)型可以識(shí)別廠商及 其具體系列,利用系統(tǒng)版本號(hào)和內(nèi)核版本號(hào)可以識(shí)別該移動(dòng)終端的軟件環(huán)境,以及利用CPU 型號(hào)可以進(jìn)一步判定機(jī)型的正確性等。本發(fā)明重點(diǎn)優(yōu)選機(jī)型、系統(tǒng)版本號(hào)、內(nèi)核版本號(hào)以及 CPU型號(hào)等專項(xiàng),主要是考慮到利用這幾種型號(hào)中的一種或多種,便可在某種范圍內(nèi)確定其 移動(dòng)終端所使用的R〇M(即其除引導(dǎo)程序之外的整個(gè)系統(tǒng)軟件環(huán)境),據(jù)此可以選擇相應(yīng)的 用于獲取Root權(quán)限的方案文件。以上專項(xiàng)通常會(huì)記載在Android系統(tǒng)中,從系統(tǒng)的設(shè)置頁(yè) 面可以看到相關(guān)信息,也可以借助本發(fā)明的客戶端軟件用指令直接讀取。實(shí)施本發(fā)明時(shí), 所采用的專項(xiàng)數(shù)目越多,理論上確定所述方案文件的范圍就越小,效果便越精確,計(jì)算量也 就越少。例如,如果僅以手機(jī)的機(jī)型來(lái)選擇方案文件,則由于該手機(jī)可能經(jīng)過(guò)系統(tǒng)升級(jí),導(dǎo) 致系統(tǒng)版本號(hào)和內(nèi)核版本號(hào)都發(fā)生了變化,剛好升級(jí)后的Root權(quán)限的破解方式與升級(jí)前 不一致,這種情況下,僅以機(jī)型選擇出大量的方案文件,其中絕大部分或者全部可能是無(wú)效 的,無(wú)論對(duì)于終端設(shè)備82還是云端服務(wù)器81,其計(jì)算量均是較大的。如果選中以上三個(gè) (例如機(jī)型、系統(tǒng)版本號(hào)及CPU)或者四個(gè)專項(xiàng),則其指向的方案文件便更精確,方案文件數(shù) 量越少,則計(jì)算量也就越低,運(yùn)行效率就更高。當(dāng)然,也便會(huì)對(duì)軟件實(shí)現(xiàn)提出更多細(xì)節(jié)要求。
[0060] 對(duì)本發(fā)明的查找單元12與排序單元13的進(jìn)一步揭示,需要結(jié)合本發(fā)明在云端服 務(wù)器81中所構(gòu)建的數(shù)據(jù)庫(kù)來(lái)進(jìn)行,故以下通過(guò)一個(gè)具體實(shí)例先對(duì)本發(fā)明所實(shí)現(xiàn)的數(shù)據(jù)庫(kù) 10結(jié)構(gòu)進(jìn)行說(shuō)明。
[0061] 本發(fā)明在一個(gè)數(shù)據(jù)庫(kù)10中構(gòu)建有三個(gè)數(shù)據(jù)表,分別是配置信息表、學(xué)習(xí)表,以及 機(jī)型記錄表。
[0062] 所述配置信息表的結(jié)構(gòu)請(qǐng)參閱下方表1所示:
[0063]
【權(quán)利要求】
1. 一種獲取本機(jī)Root權(quán)限的方法,其特征在于,包括如下步驟: 獲取是否有適用于本機(jī)特征信息的用于獲取本機(jī)Root權(quán)限的配置信息的應(yīng)答; 當(dāng)該應(yīng)答指示有適用于獲取本機(jī)Root權(quán)限的配置信息時(shí),利用與該配置信息相關(guān)的 本機(jī)存儲(chǔ)的方案文件對(duì)本機(jī)實(shí)施提權(quán); 當(dāng)利用本機(jī)存儲(chǔ)的方案文件提權(quán)失敗時(shí),W應(yīng)答方提供的配置信息所指向的方案文件 對(duì)本機(jī)實(shí)施提權(quán); 向應(yīng)答方反饋已據(jù)W實(shí)施提權(quán)的配置信息是否成功提權(quán)的結(jié)果數(shù)據(jù)。
2. 根據(jù)權(quán)利要求1所述獲取本機(jī)Root權(quán)限的方法,其特征在于,所述特征信息包括機(jī) 型、系統(tǒng)版本號(hào)、內(nèi)核版本號(hào)、CPU型號(hào)中一種或任意多種。
3. 根據(jù)權(quán)利要求1所述獲取本機(jī)Root權(quán)限的方法,其特征在于,所述應(yīng)答方提供的配 置信息被格式化在推薦列表中,該推薦列表包含一個(gè)或多個(gè)配置信息。
4. 根據(jù)權(quán)利要求3所述的獲取本機(jī)Root權(quán)限的方法,其特征在于,所述推薦列表,包含 于所述應(yīng)答之中,或者,在利用本機(jī)方案文件提權(quán)失敗之后,由本機(jī)向應(yīng)答方發(fā)起請(qǐng)求而獲 得。
5. 根據(jù)權(quán)利要求3所述的獲取本機(jī)Root權(quán)限的方法,其特征在于,所述推薦列表中的 配置信息包含用于獲取Root方案文件的指向信息,該指向信息指向本機(jī)存儲(chǔ)的方案文件 或?yàn)檫h(yuǎn)程方案文件鏈接。
6. 根據(jù)權(quán)利要求5所述的獲取本機(jī)Root權(quán)限的方法,其特征在于,W應(yīng)答方提供的配 置信息所指向的方案文件實(shí)施提權(quán)的過(guò)程中,先利用應(yīng)答方提供的配置信息中的指向信息 獲取遠(yuǎn)程方案文件并緩存于本機(jī),然后W該方案文件實(shí)施提權(quán)。
7. 根據(jù)權(quán)利要求1或6所述的獲取本機(jī)Root權(quán)限的方法,其特征在于,所述本機(jī)存儲(chǔ) 的方案文件,包括曾在本機(jī)成功獲取Root權(quán)限的已緩存的方案文件及預(yù)存儲(chǔ)的方案文件。
8. 根據(jù)權(quán)利要求7所述的獲取本機(jī)Root權(quán)限的方法,其特征在于,利用本機(jī)存儲(chǔ)的方 案文件對(duì)所述終端設(shè)備實(shí)施提權(quán)時(shí),優(yōu)先使用曾在本機(jī)成功獲取Root權(quán)限的已緩存的方 案文件。
9. 根據(jù)權(quán)利要求1至8中任意一項(xiàng)所述的獲取本機(jī)Root權(quán)限的方法,其特征在于,所 述結(jié)果數(shù)據(jù)包括本機(jī)特征信息、已被實(shí)施提權(quán)的配置信息W及表征該配置信息指向的方案 文件是否成功獲取本機(jī)Root權(quán)限的信息。
10. -種獲取本機(jī)Root權(quán)限的裝置,其特征在于,包括: 獲取單元,用于獲取是否有適用于本機(jī)特征信息的用于獲取本機(jī)Root權(quán)限的配置信 息的應(yīng)答; 提權(quán)單元,被配置為當(dāng)該應(yīng)答指示有適用于獲取本機(jī)Root權(quán)限的配置信息時(shí),利用與 該配置信息相關(guān)的本機(jī)存儲(chǔ)的方案文件對(duì)本機(jī)實(shí)施提權(quán);當(dāng)利用本機(jī)存儲(chǔ)的方案文件提權(quán) 失敗時(shí),W應(yīng)答方提供的配置信息所指向的方案文件對(duì)本機(jī)實(shí)施提權(quán); 反饋單元,用于向應(yīng)答方反饋已據(jù)W實(shí)施提權(quán)的配置信息是否成功提權(quán)的結(jié)果數(shù)據(jù)。
【文檔編號(hào)】G06F9/445GK104348628SQ201410719840
【公開(kāi)日】2015年2月11日 申請(qǐng)日期:2014年12月1日 優(yōu)先權(quán)日:2014年12月1日
【發(fā)明者】馬金亭, 才丹 申請(qǐng)人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司