迷宮密碼


轉載於:http://blog.csdn.net/unixcroot/article/details/8945499


近日在看雪罈子上閒逛,注意到了一篇帖子,提到了關於Android的密碼破解。

可能有些人沒有看到,我就重複的說一下了。

首先Android圖形解鎖有三個要求:

1、至少四個點
2、最多九個點
3、無重複點

恩,是這樣,然後圖形轉換成數字,然後通過SHA1加密,最後存儲。

好了,明白了這些,再看下點的規律。

從左上角起編號爲 00,至右下角止編號爲 08。

最終密文文件會保存到 /DATA/SYSTEM/GESTURE.KEY

知道地址了,我們可以先加鎖,然後在找到文件試試看。

在這我就不做演示,相信你都會的。

然後破解,至於破解思路,引用一下原作者的話:

從密碼明文的編碼來看,各單數位數字爲零,雙數位數字不重複地排列,並將這個排列進行單次SHA1運算。那麼也就是說,通過數學計算可知,由於單數位確定,雙數位不重複,則根據 Android 圖案鎖定規則可以設置的鎖定圖案總數是固定的,4個數的密碼個數爲9*8*7*6=3024。5個數的密碼個數爲15120個。6個數的密碼個數爲60480個。7個數的密碼個數爲181440個。8個數和9個數的密碼個數都是36288個。也就是說一共密碼的可能個數爲985824個。由於密碼複雜程度不高,破解相對容易。只要做一個字典進行暴力猜解就可以將正確密碼解出來且速度很快。生成的字典50多m,暴力破解速度基本是秒破的。
暴力刪掉方法,原來作者的思路是通過手機在開啓USB調試功能下,通過命令:

  1. adb shell rm /data/system/gesture.key  

搞定的。

但是這樣就有了侷限性,有些人爲了安全,並未開啓USB調試。

所以有些時候就鬱悶了。對此我無意間想到了一種方法,這個是在修復半成型的磚時,刷機學到的。

Android有個分區,叫fastboot。對,或許已經有人想到了,我們就是用這個。完全不用考慮是否開啓USB調試。專業用語 線刷,也就是用的它。

當然不管USB調試還是fastboot,一切一切的大前提是安裝驅動,至於驅動不用說了,相信廣大的手機發燒友都知道的,豌豆莢類似的手機助手都有。

好,我們熟悉下fastboot:

  1. 從字面上來看是【快速啓動】的意思,也算是一個刷機界面,不過比recovery更加底層.這個底層是更加接近硬件層的意思.  
  2. 兩個都很重要,不過fastboot更爲主要.當你不能進入recovery的時候,不要緊張,你還能進fastboot挽救,不過當你連fastboot都不能進入的時候,那可真就是磚了.手機需要送廠才能維修了。  
  3. 爲了使用Fastboot功能.您必須root您的設備.並獲得S-OFF的SPL.你的電腦還必須裝有ADB驅動.  
  4. 進入Fastboot的方式是關機狀態下按返回+開機.  

恩 大體就是這樣,我們看下命令行詳情:

  1. fastboot [ <選項> ] <命令>  
  2. []括起來表示這個是可選的.  
  3. <>括起來表示這個是必須的.  
  4. 可用命令:  
  5. update <文件名> 從官方update.zip升級系統.該update.zip必須是官方的  
  6. flashall 'flash boot' +'flash system'  
  7. flash <分區名> [ <文件名> ] 將文件寫入分區.文件必須正確的格式.分區名有但不限於system,recovery,boot,splash1,hboot,radio,userdata,cache  
  8. erase <分區名> 清空一個分區.  
  9. getvar <參數名> 顯示一個啓動參數  
  10. boot <內核文件> [ <ramdisk文件> ] 將電腦上的內核下載到手機並用該內核啓動系統.  
  11. flash:raw boot <內核文件> [ <ramdisk文件> ] 創建boot.img並下載到手機啓動系統.  
  12. devices 列出所有與電腦連接的設備.  
  13. reboot 正常啓動系統  
  14. reboot-bootloader 啓動系統到hboot  
  15. 選項:  
  16. -w 清空用戶數據分區和緩存分區.相當於recvery中的"wipe data/factoryreset"  
  17. -s <串口號> 置頂要操作的設備的串口號  
  18. -p <產品名> 指定要操作的設備的產品名.比如hero,bravo,dream...  
  19. -c <命令行> 用命令行替換系統的啓動命令行.  
  20. 分區解釋:  
  21. system:系統分區.我們刷機器一般就是刷的這個分區.  
  22. userdata:數據分區.  
  23. cache:緩存分區  
  24. recovery:Recovery分區.  
  25. boot:存放內核和ramdisk的分區.  
  26. hboot:這個是SPL所在的分區.很重要哦.也是fastboot所在的分區.刷錯就真的變磚了.  
  27. splash1:這個就是開機第一屏幕了.  
  28. radio:這個是無線所在的分區.  

OK ,或許大家都看出來了神馬。我們可以直接回復出廠設置,也就是擦除用戶數據

命令:

  1. fastboot -w  
還有就是和上面USB調試做法一樣,刪除密碼文件。

命令:

  1. fastboot -c rm /data/system/gesture.key  
差不多就是這樣了。

祝大家破解愉快。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章