系統知識網 手機應用 小米MiFlash刷機免認證的方法

小米MiFlash刷機免認證的方法

今天系统知识网給需要使用小米MiFlash刷機的朋友們分享一下免認證的思路,希望可以幫到大傢!小米MiFlash刷機免認證的方法小米對線刷包中的【prog_ufs_firehose_sdm855_ddr.elf】文件(是個二進制文件,9。

今天系统知识网給需要使用小米MiFlash刷機的朋友們分享一下免認證的思路,希望可以幫到大傢!

小米MiFlash刷機免認證的方法

小米對線刷包中的【prog_ufs_firehose_sdm855_ddr.elf】文件(是個二進制文件,9008線刷就是靠它)進行瞭加密。
miflash進行【9008】線刷,其實本質就是調用高通的驅動。高通線刷工具叫【qpst】,網上都可以下載。

電腦會把這個【prog_ufs_firehose_sdm855_ddr.elf】文件下載到手機,通過此文件來把線刷包中的所有文件按照各個xml的配置代碼,依次寫入手機中。
小米對【9008】加密,其實就是把【prog_ufs_firehose_sdm855_ddr.elf】給加密瞭,導致miflash或者高通的qpst在讀取這個【prog_ufs_firehose_sdm855_ddr.elf】文件時,強制報錯。miflash強制報錯後,就會彈出登陸框,讓你登陸小米賬號,如果此小米賬號有【9008】權限的話,便重啟線刷並走完。這就是整個刷【9008】的過程。

【prog_ufs_firehose_sdm855_ddr.elf】隻有一個簽名,用來保護手機型號,因為不用型號的手機【prog_ufs_firehose_sdm855_ddr.elf】文件是不能通用的,簽名就在這裡發揮瞭作用,防止其它型號的手機刷入。而小米似乎就在這個【prog_ufs_firehose_sdm855_ddr.elf】裡面多加瞭一個小米自傢的簽名,用來驗證你的小米賬號是否具有【9008】權限的。

所以,解方式有兩種

一、解【prog_ufs_firehose_sdm855_ddr.elf】文件中的小米自傢簽名認證,刪除掉那段簽名認證的代碼,這樣線刷就不會報錯(彈出沒有【9008】權限)瞭。

二、直接對miflash下手,用com口抓包工具,對正處於【9008】線刷狀態的miflash進行抓包,看看miflash到底對手機com發送瞭神馬代碼(這個代碼就是把線刷包中的文件寫入到手機),然後捕獲此代碼,將其稍加修改,使其能直接用高通qpst進行線刷,而無需用miflash來線刷,這樣就算沒有【9008】權限的小米賬號,也能直接刷。因為高通qpst工具不需要任何登陸。

目前我試著改瞭【prog_ufs_firehose_sdm855_ddr.elf】中驗證權限的代碼,發現改瞭之後,需要重新用高通的簽名來簽名elf,因此,此法不通。所以,要想解,就隻能從miflash來入手瞭。

用IDA_Pro_v7.0(百度下載)反編譯【prog_ufs_firehose_sdm855_ddr.elf】文件,查看其源代碼,或者直接用16進制工具(010Editor.exe)也可以查看其代碼。你能在源代碼中,找到這樣的代碼【onlynop andsig】,這個就是小米自傢的簽名權限認證。破解它,就完事瞭。就是它,讓我們在【9008】線刷時,彈出登錄框。你用老版本的miflash沒有任何用,它隻是讓你miflash強制報錯中止線刷而已,所以高通qpst也是如此被強制報錯中止。所以要用最新的miflash,最新的miflash在接收到這樣的強制報錯後,就會彈出登錄框,登陸成功後鏈接服務器,判讀是否具有【9008】權限,沒有則提示你沒有【9008】權限,然後就沒有然後瞭。如果判斷為有【9008】權限,miflash便會自動清除錯誤信息並開始線刷(它會從服務器就收一些數據包,用來給【prog_ufs_firehose_sdm855_ddr.elf】文件中的【onlynop andsig】這個代碼驗證判斷用)。然後我發現修改【prog_ufs_firehose_sdm855_ddr.elf】後,需要重新使用高通的簽名對其簽名,不然手機的cpu不認未簽名的文件,也就無法下載。所以,似乎隻能從miflash入手瞭。
從miflash入手,用記事本(其他編輯工具可能看不到)打開【XiaoMiFlash.exe】,有很多亂碼,不管他直接搜索代碼【f h _ l oa d e r . e xe】,這個文件其實是高通提供的,【9008】線刷就是它把線刷包中的文件寫入到手機的。miflash也是調用的它來寫入刷機包的。你能在記事本中找到類似於這樣的代碼【fh_loader.exe –port=\.\COM20 –sendxml=partition.xml,patch4.xml,rawprogram4.xml –search_path=D:\Users\R\Desktop\test –noprompt –showpercentagecomplete –memoryname=UFS】看不懂?鏈接:【 查看附錄1 】我就懶得一個一個解釋參數的含義瞭。【fh _ l o a d e r . e xe】文件就是通過這樣的命令將線刷包中的文件,一個一個的寫入到手機磁盤的。所以,對其正處於【9008】線刷狀態的miflash用com抓包工具,進行抓包,看看miflash到底發送瞭神馬樣的指令。如果成功將指令截取出來瞭,那麼以後的【9008】強刷都無需這坑爹的miflash瞭,直接高通qpst線刷之,或者直接用cmd命令,依次執行這些命令,就可以完成【9008】線刷,那麼,小米所謂的【9008加密,售後賬號才能刷寫,這就完全成為瞭擺設】。

【9008】線刷走向:通過【QSaharaServer.exe】文件將【prog_ufs_firehose_sdm855_ddr.elf】文件下載到手機,再通過【fh_loader.exe】文件,執行刷寫命令,把線刷包中的所有文件依次一個一個的寫入手機磁盤中。
小米【9008】加密走向:使用miflash或者高通qpst開始線刷,調用【QSaharaServer.exe】文件將【prog_ufs_firehose_sdm855_ddr.elf】文件下載到手機,再調用【fh_loader.exe】文件,執行刷寫命令,執行到小米自傢的簽名驗證代碼處,強制【return eoor】,迫使線刷工具(miflash或者高通qpst)報錯中止線刷,高通qpst就沒有然後瞭,最新版本的(MiFlash2018-5-28-0)miflash接收到這個強制報錯信息,調用mi目錄下的【account_auth.exe】進行登陸小米賬號,鏈接服務器判斷張否權限問題,無權限就沒然後瞭,有權限,就從服務器下載相關數據包到本地,再次以接收的數據包去執行【fh_loader.exe】文件,小米自傢的簽名認證就通瞭,接下來就是開始正常刷入手機磁盤瞭。

關於QFIL下載工具

1.下載qpst工具,在QFIL文件夾下找到fh_loader.exe和QSaharaServer.exe文件
2.使用QSaharaServer.exe下載firehorse代{過}{濾}理,如下:
QSaharaServer.exe –p \.\COM5 -s 13:C:\images\prog_emmc_firehose_8909.mbn
com5是diag端口號
C:\images\prog_emmc_firehose_8909.mbn是firehose代{過}{濾}理路徑
3.開始下載升級
fh_loader.exe –port=\.\COM5 –erase=0 –sendxml=rawprogram_unsparse.xml –
search_path=C:\8909images –noprompt –showpercentagecomplete –
memoryname=eMMC –reset
–erase=0代表全擦升級,也代表物理分區0擦除。例如erase=x。
–sendxml代表要用的xml文件,如果是兩個xml,可以這樣使用:–sendxml=rawprogram_nand_p2K_b128K.xml,patch_p2K_b128K.xml。
–search_path下載版本路徑。
–noprompt 取消用戶與fh_loader交互。
–showpercentagecomplete 指示下載百分率
–memoryname內存類型。
–reset 下載完成後自動重啟。
以上是主要下載的可選參數,也可以不選擇,例如,不全擦升級,可以如下操作fh_loader.exe –port=\.\COM5–sendxml=rawprogram_unsparse.xml –
search_path=C:\8909images –noprompt –showpercentagecomplete –
memoryname=eMMC –reset。
總結:使用QFIL下載,實質就是下載firehorse代{過}{濾}理後,通過代{過}{濾}理下載即可完成。

以上來自吾愛破解網友的分享,希望大傢也可以相互分享一下自己的一些刷機新心得!

返回顶部