1. 程式人生 > >手工root你的手機/root的原理

手工root你的手機/root的原理

本文需要的基礎:
基本windows命令列操作、linux shell操作

===============================

說到root一個android,很多人連它本身的意思都不清楚

在linux系統中root使用者擁有至同無上的權力,當然也可以把整個系統搞崩潰
所以廠商一般在面向消費者的手機裡面禁用root許可權。這樣確實使手機
穩定很多,但也失去了很多DIY的樂趣。所以要改機,先提權到root

正統的發行版linux中有一個su命令,用於普通使用者提權到root。
su本來在linux裡是不與其它程式關聯的,
在現在的android中su是與superuser.apk關聯的
也就是大家常看到的某某程式在想提權時,彈出的超級使用者授權提示
只要這兩個東西在系統裡面,那就能讓普通程式提權了

要把su安裝進去,又回到原點,沒root許可權我怎麼拷檔案進去呢?

國外一些黑客研究android核心程式碼,搞定了一種破/解程式

現有的有兩個:
psneuter - android 1.5-android 2.2適用,執行完後可以adb root驗證
gingerBreak - android 2.3-android 3.0適用,執行完後需要執行/data/local/tmp/sh進入root shell
它們的原理過於複雜,不作講解。原始碼可以在網路上找到

通過執行破/解程式,可以臨時得到root許可權,
在這個許可權時把你的su和superuser.apk拷入手機系統
這樣以後就可以隨時隨地獲取root許可權,也就是真正地root了你的手機

說了這麼多,大家清楚了,Android提權的關鍵是三個東西, su + superuser.apk + 破/解程式
下面提供下載:


(這幾個檔案在SuperOneClick和ZOC_FlashMaster中均有附帶)

===============================

好。這堂課真是文字太多了。。
下面是實戰過程:

我手上的milestone是android 2.2,使用psneuter和su-v2(SuperOneClick1.90)
例如我把這三個檔案都拷在F:\,su-v2已經重新命名為su
一般android都使用臨時資料夾/data/local/tmp

有了上一堂課的基礎,我們可以使用adb來上傳這幾個必要檔案
上傳檔案
  1. F:\>adb push psneuter /data/local/tmp/
  2. 2183 KB/s (585731 bytes in 0.262s)
  3. F:\>adb push su /data/local/tmp/
  4. 884 KB/s (26264 bytes in 0.029s)
  5. F:\>adb push superuser.apk /data/local/tmp
  6. 1511 KB/s (196521 bytes in 0.127s)
複製程式碼 linux中,可執行檔案是需要許可權的,普通的一般用755([-rwx][r-x][r-x])
我們把psneuter的許可權改成755
  1. F:\>adb shell
  2. $ cd /data/local/tmp
  3. cd /data/local/tmp
  4. $ ls -l
  5. ls -l
  6. -rw-rw-rw- shell    shell      196521 2010-09-05 15:47 superuser.apk
  7. -rw-rw-rw- shell    shell       26264 2010-08-17 17:44 su
  8. -rw-rw-rw- shell    shell      585731 2011-01-08 18:02 psneuter
  9. $ chmod 755 psneuter
  10. chmod 755 psneuter
  11. $ ls -l
  12. ls -l
  13. -rw-rw-rw- shell    shell      196521 2010-09-05 15:47 superuser.apk
  14. -rw-rw-rw- shell    shell       26264 2010-08-17 17:44 su
  15. -rwxr-xr-x shell    shell      585731 2011-01-08 18:02 psneuter
  16. $
複製程式碼 執行psneuter
可以看到命令提示符跳回windows的了,也就是adbd已經重啟
  1. $ ./psneuter
  2. ./psneuter
  3. property service neutered.
  4. killing adbd. (should restart in a second or two)
  5. F:\>
我們把/system/掛載為可寫。由於adbd啟動需要時間,我加入了wait-for-device命令
可以看到,提示說remount成功
*如果提示無許可權,說明你破/解程式不成功
  1. F:\>adb wait-for-device remount
  2. remount succeeded
我們現在把su和superuser.apk分別拷入系統
可以全程看見$提示符變成#了,表示你有root許可權
  1. F:\>adb shell
  2. # cd /data/local/tmp
  3. cd /data/local/tmp
  4. # cp su /system/bin/ #--拷入su,有些人是放在/system/xbin的
  5. cp su /system/bin/
  6. # cp superuser.apk /system/app/ #--拷入apk
  7. cp superuser.apk /system/app/
  8. # chmod 4755 /system/bin/su #--su命令是需要超級許可權的,所以是4755,具體參考linux檔案許可權
  9. chmod 4755 /system/bin/su
  10. # chmod 644 /system/app/superuser.apk #--apk一般是644
  11. chmod 644 /system/app/superuser.apk
  12. # exit
  13. exit
我們重啟手機
  1. F:\>adb reboot
  2. F:\>
好了,裝個rootExplore檢查一下看有沒有正常獲取ROOT許可權吧

相關推薦

手工root手機/root原理

本文需要的基礎: 基本windows命令列操作、linux shell操作 =============================== 說到root一個android,很多人連它本身的意思都不清楚 在linux系統中root使用者擁有至同無上的權力,當然也可以把整個系統

小馬哥===教修改核心boot.img來實現手機root許可權

在windows下 首先安裝Java環境和配置環境變數 解包boot.img檔案  在ramdisk資料夾下開啟init.rc檔案 在其中加入三行程式碼 service geno /sbin/genoclass late_startoneshot 在開啟cpiolist檔

Android手機Root授權原理細節全解析

首先關於Root的方式,這裡不做詳解,可以有很多漏洞,比如利用uid溢位後歸為0,得到Root許可權,然後操作檔案系統等。 手機Root後,最重要的是,給手機安裝了su程式和superuser apk。 su一般被安裝在/system/xbin 或者 /system/bi

VirtualXposed,讓無需Root也能使用Xposed框架!

ofo 高級 tac containe spa 性問題 常用 便是 span VirtualXposed 是基於VirtualApp 和 epic 在非ROOT環境下運行Xposed模塊的實現(支持5.0~8.1)。一直以來Xposed框架最大的入門難度就在於設備需要Roo

Root賬號安全嗎?-看我用phpmyadmin密碼暴力破解工具攻破的系統

你的Root賬號安全嗎?-看我用phpmyadmin密碼暴力破解工具攻破你的系統 simeon phpmyadmin密碼暴力破解是指通過指定賬號和密碼對mysql資料庫進行登入嘗試,如果字典中的密碼跟實際密碼匹配,則意味著密碼破解成功。破解的前提是可以通過url正常登入phpmyadmin。

Android手機root,檢視sqllite資料庫檔案

除錯手機紅米note4 1.自行百度,獲取紅米note4手機root許可權 2.cmd 開啟dos彈窗 3.輸入adb shell  -->  su--->  chmod 7777 /data  ----->  chmod 7777 /data/dat

手機ROOT,ROOT的優缺點

擁有手機ROOT許可權是一把雙刃劍,正確的理解並選擇是否獲取ROOT許可權是每一個android手機使用者需要了解的知識 一. 什麼是ROOT 1.ROOT許可權,系統許可權的一種,也叫根許可權,與SYSTEM許可權可以理解成一個概念,但高於Administrator許可

oppo(不root手機檢視萬能鑰匙破解的wifi密碼例項

                       (一)寫在前面的話萬能鑰匙密碼檢視器在應用市場上有很多,但是他們都有一個共同的基本要求:需要提供root許可權。這一要求讓很多oppo手機使用者望而止步了。 但是作為一個程式設計師怎麼就可以這樣放棄呢?  (二)獲取密碼檔案遇到的問題通過了解,市場上的wifi密碼

華為手機 ROOT 或 CAM-UL00 ROOT 或 榮耀暢玩5A ROOT

在百度上搜索了一遍,都嘗試了下,使用的是PC端軟體,USB連線的手機。 嘗試的有:306ROOT、ROOT大師、奇兔ROOT、、、、略! 一個都沒有用上!然後換種方式找方式,終於明白原因。 十年前剛開始用Android機,ROOT操作那是分分鐘的事,現在國內的手機廠商都成長起來了。

手機Root工具竟然這樣給使用者打廣告

之前嘗試Root華為手機,以失敗告終,就一直沒去解除安裝Root工具,不久的一天突然電腦出現了這樣的廣告: 尺度之大,不小心被別人看到了也很尷尬啊,還沒有關閉的按鈕。 黑人問號?? 工作管理員看到有個執行程式名字很像 先點進去看資訊,目錄指向–> 好了,罪魁禍

從安卓手機ROOT提取微信聊天記錄到利用Python進行詞雲分析全過程

剛剛來到了2018年,正值女票生日將近。想想這一年來我倆的聊天記錄也不少(匯出後一看十個月的微信文字聊天記錄將近8萬條 ^-^),於是就有了將我們的聊天記錄匯出來製作成詞雲,或者分析一下她說的最多的一句話是什麼?還打算做個預測模型,輸入一個句子然後讓模型預測下是她說的還是我說的,哈哈,想想還有點小激

華為手機root以及搭建xposed框架的一點經驗和教訓

一、獲取手機的root許可權現在的手機廠商都不給root許可權了,即使你下載什麼root大師、360一鍵root,單純地想一鍵root成功是不可能的,唯一的辦法是刷機(也就是換一個系統,不用手機廠商提供的系統),步驟如下:(2)然後在電腦下載奇兔刷機軟體,選擇適合自己機型的刷

如何在Root手機上開啟ViewServer,使得HierachyViewer能夠連線

================================================================ .method private isSystemSecure()Z     .registers 4     .prologue     .line 6276

啟用SEAndroid,手機root後還安全嗎?

你是否仍在為手機安全感到困擾?是否擔心手機root之後會帶來更大的安全隱患?SEAndroid會幫助你解決困擾!             SEAndroid基於NSA(美國國家安全域性)開發的SELinux (Security-Enhanced Linux),NSA在Lin

【資料庫】如果有人問資料庫的原理,叫他看這篇文章

一提到關係型資料庫,我禁不住想:有些東西被忽視了。關係型資料庫無處不在,而且種類繁多,從小巧實用的 SQLite 到強大的 Teradata 。但很少有文章講解資料庫是如何工作的。你可以自己谷歌/百度一下『關係型資料庫原理』,看看結果多麼的稀少【譯者注:百度為您找到相關結果約1,850,000個…】

如果有人問資料庫的原理,叫他看這篇文章

一提到關係型資料庫,我禁不住想:有些東西被忽視了。關係型資料庫無處不在,而且種類繁多,從小巧實用的 SQLite 到強大的 Teradata 。但很少有文章講解資料庫是如何工作的。你可以自己谷歌/百度一下『關係型資料庫原理』,看看結果多麼的稀少【譯者注:百度為您找到相關結果約

一招教手機音訊視訊刪除的恢復方法

手機音視訊刪除了怎麼恢復?現如今人們經常會使用手機拍照功能拍下視訊或是錄製音訊,這些視訊會將我們的生活中的點點滴滴都記錄,我們不僅可以分享給我們家人觀看也可以發給朋友,讓他們瞭解我們的生活狀況。如果我們在清理手機照片的時候,不小心將手機上這些視訊或音訊上刪除看怎麼辦?下面小編就給大家分享一個最為實用的方法。開

手機記憶體總是不夠用?還不是因為這個APP!手機裡肯定有!

手機記憶體總是不知不覺就滿了,一次次的清理,又一次次的被填滿,這其中有一個罪魁禍首就是微信。微信是怎樣一步步把我們的手機記憶體給吃掉的呢?且往下看。 微信群聊佔記憶體無可奈何 工作群、同學群、粉絲群、家族群、好友群,總之但凡是用微信的人,基本上都有幾個群,這些群多數自己都很少在裡面說話,但又

usb除錯模式已開啟,adb devices顯示List of devices attached 解決辦法!紐維K333一鍵ROOT,獲取ROOT許可權!

usb除錯模式已開啟,adb devices顯示老顯示List of devices attached 。剛開始以為USB線問題,跟朋友借了一根,未果。 更換其他的機子測試就可以顯示裝置,但是這部紐維K333 (國產機/android 4.1.1)卻顯示不出來,使用金山手機

[LINUX]虛擬機器上cent os7忘記root密碼修改root密碼

請支援原創,認準DannisTang([email protected]) 我在虛擬機器安裝了cent OS7,但是忘記了root密碼,登入的時候發現登入不上了,然後重新修改密碼 1、登入失敗的頁面 2、重啟虛擬機器,在重啟的時候不停的連續按著ES