android螢幕鎖破解

2021-07-25 16:50:15 字數 1246 閱讀 3199



題目:android螢幕解鎖圖案破解

android手機上有乙個螢幕解鎖的應用相信大家都不陌生,在 android 裝置上,使用者可以通過設定鎖定圖案作為密碼對裝置使用者介面進行鎖定,鎖定介面如下圖所示。

一般的android手機的鎖定介面由九個點構成,設定圖案需滿足三個要求:

至少四個點;

最多九個點;

無重複點。

這種看似複雜的解鎖方式在 android 儲存時使用的是明文轉換後採用雜湊方式儲存。android 裝置圖案鎖定的加密儲存過程:

下面設定乙個圖形加密鎖測試一下:

第一步:圖形輸入。

輸入上圖一樣的圖案(看上去是個「2」,使用了九個點。)

第二步:明文加密。

這一步是系統自動完成的,首先是九個點的資料含義,含義是這樣的:從左上角起編號為 00,至右下角止編號為 08。那麼上圖中「2」的編碼應該是000102050403060708。使用sha1演算法對上述十六進製制編碼進行計算後得到密文「333d9f31c209ce1217bc165c5baa7307b06bbf87」。這一步系統會自動將圖案轉換成編碼,在將編碼算出密文的。因此我們是看不到的。

第三步:密文儲存。

計算好密文後,系統會將密文儲存在/data/system/gesture.key檔案中,我們可以使用「adb pull /data/system/gesture.key gesture.key」將這個密碼檔案系在到本地,得到密碼檔案後,用記事本開啟是亂碼的,要用十六進製制編輯器開啟才可以看到密文。

可以看到密文和上一步我們計算出來的是一樣的。

對上面演算法總結一下規律。從密碼明文的編碼來看,各單數字數字為零,雙數字數字不重複地排列,並將這個排列進行單次sha1運算。那麼也就是說,通過數學計算可知,由於單數字確定,雙數字不重複,則根據 android 圖案鎖定規則可以設定的鎖定圖案總數是固定的,4個數的密碼個數為9*8*7*6=3024。5個數的密碼個數為15120個。6個數的密碼個數為60480個。7個數的密碼個數為181440個。8個數和9個數的密碼個數都是36288個。也就是說一共密碼的可能個數為985824個。由於密碼複雜程度不高,破解相對容易。只要做乙個字典進行暴力猜解就可以將正確密碼解出來且速度很快。生成的字典50多m,暴力破解速度基本是秒破的。

當然如果只是為了搞定這個密碼,還有更簡單的方法,就是直接adb shell到裝置上,然後執行「rm /data/system/gesture.key」命令將密碼檔案刪掉就可以了,刪除後相當於沒有裝置圖案鎖。

破解android螢幕解鎖圖案就是這麼簡單,希望大家喜歡。

Android 解螢幕鎖與點亮螢幕

最近在做乙個鬧鐘的專案,當鬧鐘響起的時候需要用到自動解鎖和點亮螢幕,因此記錄一下解螢幕鎖與點亮螢幕的 keyguardmanagerkm keyguardmanager getsystemservice context.keyguard service 得到鍵盤鎖管理器物件 keyguardlock...

Android 解螢幕鎖與點亮螢幕

當android手機 應該是所有的手機都這樣 收到簡訊或者 時,會自動點亮螢幕,解開螢幕鎖,以方便使用者即時操作,下面用 來實現這一功能 keyguardmanager km keyguardmanager getsystemservice context.keyguard service 得到鍵盤...

android的亮螢幕的鎖和鍵盤鎖

android中的兩把鎖 walklock and keyguardlock 詳細分析 複製鏈結 walklock 顧名思義 喚醒鎖 點亮螢幕用的 keyguardlock 顧名思義 鍵盤鎖 解鎖鍵盤用的 詳細介紹 1 walklock 喚醒鎖 walklock真的能點亮螢幕嗎?答案是肯定的。可是有...