紹棠 iOS 判斷手機是否越獄

2021-08-19 06:36:08 字數 1521 閱讀 1124

需新增以下c語言庫

#import

#import

#import

#include

#include

#import

#import

#import

1.通過越獄後增加的越獄檔案判斷

一般來說,手機越獄後會增加以下檔案

/library/mobilesubstrate/mobilesubstrate.dylib

/bin/bash

/usr/sbin/sshd

/etc/apt

判斷這些檔案是否存在,只要有存在的,就可以認為手機已經越獄了。

nsarray *jailbreak_tool_paths = @[

@"/library/mobilesubstrate/mobilesubstrate.dylib",

@"/bin/bash",

@"/usr/sbin/sshd",

@"/etc/apt"

];- (bool)isjailbreak

}nslog(@"the device is not jail broken!");

return

no;}

2.根據是否能開啟cydia判斷

- (bool)isjailbreak 

nslog(@"the device is not jail broken!");

return

no;}

3.根據是否能獲取所有應用的名稱判斷

沒有越獄的裝置是沒有讀取所有應用名稱的許可權的。

- (bool)isjailbreak 

nslog(@"the device is not jail broken!");

return

no;}

4.根據使用stat方法來判斷cydia是否存在來判斷

這個方法的思路還是通過判定cydia應用,但方法是使用stat函式,同時會判斷是否有注入動態庫。

int

checkinject

() return1;}

intcheckcydia

() } else

return

0;}

5.根據讀取的環境變數是否有值判斷

dyld_insert_libraries環境變數在非越獄的裝置上應該是空的,而越獄的裝置基本上都會有library/mobilesubstrate/mobilesubstrate.dylib

char* printenv(void) 

- (bool)isjailbreak

nslog(@"the device is not jail broken!");

return

no;}

以上5種方法均可以判斷設定是否越獄,但為了保證判斷的準確性,通常會多種方法聯合使用。

iOS 判斷手機是否越獄

1.通過越獄後增加的越獄檔案判斷 通常情況下,手機越獄後會增加以下檔案 library mobilesubstrate mobilesubstrate.dylib bin bash usr sbin sshd etc apt判斷這些檔案是否存在,讓檔案新增到陣列中,遍歷陣列,如果存在任何乙個檔案,就...

iOS如何判斷手機是否已越獄

分享一篇關於安全攻防類 越獄檢測的攻與防 在應用開發過程中,我們希望知道裝置是否越獄,正以什麼許可權執行程式,好對應採取一些防禦和安全提示措施。ios7相比之前版本的系統而言,公升級了沙盒機制,封鎖了幾乎全部應用沙盒可以共享資料的入口。即使在越獄情況下,限制也非常多,大大增加了應用層攻擊難度。比如,...

iOS 獲取判斷手機螢幕尺寸,並判斷手機系統版本

通常情況,我們會需要獲取手機系統和手機尺寸,而且為了方便我們還要設定成全域性的 巨集定義,在任何乙個類都可以使用 建完以後 uidevice currentdevice systemversion floatvalue 手機系統 define ios7 or later uidevice curre...