国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

記錄常規越獄的判斷方法

移動開發 iOS
蘋果是非常看重產品的安全性的,所以給用戶設計了一套復雜的安全機制。這讓喜愛自由,崇尚一切開放的程序員們極度不爽,于是越獄就成了蘋果和黑客們反復斗法的場所。總體來說,越獄可以讓我們隨意安裝、共享應用,但確實也降低了設備的安全性,會給一些惡意應用提供方便之門

蘋果是非常看重產品的安全性的,所以給用戶設計了一套復雜的安全機制。這讓喜愛自由,崇尚一切開放的程序員們極度不爽,于是越獄就成了蘋果和黑客們反復斗法的場所。總體來說,越獄可以讓我們隨意安裝、共享應用,但確實也降低了設備的安全性,會給一些惡意應用提供方便之門。有時我們的應用希望知道安裝的設備是否已經越獄了,顯然,蘋果官方不會給出解決方案來的,那么我們怎么辦呢?因為越獄后會自動安裝cydia,所以我們可以從這方面入手;也可以借助權限問題,去讀取應用的列表;還可以去讀環境變量,不越獄的機器應該是讀取不到任何內容的。

下面我們一個一個方法來講:

1. 判定常見的越獄文件

/Applications/Cydia.app

/Library/MobileSubstrate/MobileSubstrate.dylib

/bin/bash

/usr/sbin/sshd

/etc/apt

這個表可以盡可能的列出來,然后判定是否存在,只要有存在的就可以認為機器是越獄了。

  1. #define ARRAY_SIZE(a) sizeof(a)/sizeof(a[0]) 
  2.  
  3. const char* jailbreak_tool_pathes[] = { 
  4. "/Applications/Cydia.app"
  5. "/Library/MobileSubstrate/MobileSubstrate.dylib"
  6. "/bin/bash"
  7. "/usr/sbin/sshd"
  8. "/etc/apt" 
  9. }; 
  10.  
  11. - (BOOL)isJailBreak 
  12.   for (int i=0; i<ARRAY_SIZE(jailbreak_tool_pathes); i++) { 
  13.   if ([[NSFileManager defaultManager] fileExistsAtPath:[NSString stringWithUTF8String:jailbreak_tool_pathes[i]]]) { 
  14.   NSLog(@"The device is jail broken!"); 
  15.   return YES; 
  16.     } 
  17.   } 
  18.   NSLog(@"The device is NOT jail broken!"); 
  19.   return NO; 

2. 判斷cydia的URL scheme

URL scheme是可以用來在應用中呼出另一個應用,是一個資源的路徑(詳見《iOS中如何呼出另一個應用》),這個方法也就是在判定是否存在cydia這個應用。

  1. 01.- (BOOL)isJailBreak 
  2. 02.{ 
  3. 03.if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"cydia://"]]) { 
  4. 04.NSLog(@"The device is jail broken!"); 
  5. 05.return YES; 
  6. 06.} 
  7. 07.NSLog(@"The device is NOT jail broken!"); 
  8. 08.return NO; 
  9. 09.} 

3. 讀取系統所有應用的名稱

這個是利用不越獄的機器沒有這個權限來判定的。

  1. #define USER_APP_PATH @"/User/Applications/" 
  2. - (BOOL)isJailBreak 
  3.   if ([[NSFileManager defaultManager] fileExistsAtPath:USER_APP_PATH]) { 
  4.   NSLog(@"The device is jail broken!"); 
  5.   NSArray *applist = [[NSFileManager defaultManager]   contentsOfDirectoryAtPath:USER_APP_PATH error:nil]; 
  6.   NSLog(@"applist = %@", applist); 
  7.   return YES; 
  8.   } 
  9.   NSLog(@"The device is NOT jail broken!"); 
  10.     return NO; 

4. 使用stat方法來判定cydia是否存在

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

  1. #define CYDIA_APP_PATH "/Applications/Cydia.app" 
  2. int checkInject() 
  3.   int ret; 
  4.   Dl_info dylib_info; 
  5.   int (*func_stat)(const char*, struct stat*) = stat; 
  6.  
  7.   if ((ret = dladdr(func_stat, &dylib_info)) && strncmp(dylib_info.dli_fname, dylib_name,   strlen(dylib_name))) { 
  8.   return 0; 
  9.   } 
  10.   return 1; 
  11.  
  12. int checkCydia() 
  13.   // first ,check whether library is inject 
  14.   struct stat stat_info; 
  15.  
  16.   if (!checkInject()) { 
  17.   if (0 == stat(CYDIA_APP_PATH, &stat_info)) { 
  18.   return 1; 
  19.     } 
  20.   } else { 
  21.         return 1; 
  22.     } 
  23.   return 0; 
  24.  
  25.   if (checkCydia()) { 
  26.   NSLog(@"The device is jail broken!"); 
  27.   return YES; 
  28.   } 
  29.   NSLog(@"The device is NOT jail broken!"); 
  30.   return NO; 

5. 讀取環境變量

 

  1. 這個DYLD_INSERT_LIBRARIES環境變量,在非越獄的機器上應該是空,越獄的機器上基本都會有Library/MobileSubstrate/MobileSubstrate.dylib 
  2. char* printEnv(void
  3.   char *env = getenv("DYLD_INSERT_LIBRARIES"); 
  4.   NSLog(@"%s", env); 
  5.   return env; 
  6.  
  7. - (BOOL)isJailBreak 
  8.   if (printEnv()) { 
  9.   NSLog(@"The device is jail broken!"); 
  10.   return YES; 
  11.   } 
  12.   NSLog(@"The device is NOT jail broken!"); 
  13.   return NO; 

當然,判定一個設備是否越獄時,可以多種方法并用以確保準確。這里我還想說的是越獄有***越獄還有非***越獄,這本身就不是官方有保證的行為,所以情況也是復雜多變。iOS7針對沙盒機制也有了改進升級,有些情況對新的版本或許是不合適的,這點還需要實際情況實際處理。另外,還有fork一個子線程,看返回值等一些方法,這里也不再一一列舉。

***,越獄畢竟會帶來不安全因素的增加,尤其是金融工具裝的比較多的情況下,強烈不推薦越獄。

責任編輯:chenqingxiang
相關推薦

2018-12-11 10:55:00

SQLFuzzWEB安全

2009-10-30 10:40:56

2014-08-07 15:33:09

光纖放大器

2010-09-01 09:59:32

CSS

2021-07-19 10:23:58

DOS攻擊網絡攻擊網絡威脅

2009-12-16 10:14:12

家庭無線路由設置

2009-12-01 10:36:32

寬帶路由器IP

2010-08-24 13:52:37

無線網絡故障

2010-08-31 09:38:17

無線網絡故障

2010-11-25 14:05:15

MySQL查詢中間記錄

2018-07-23 15:50:43

iOS越獄蘋果

2009-10-27 09:31:32

VB.NET啟動Sma

2010-12-21 09:27:06

Windows服務器

2015-07-03 12:38:51

2010-10-13 17:07:46

MySQL刪除重復記錄

2010-10-13 17:13:17

MySQL重復記錄

2010-11-25 15:43:02

MYSQL查詢重復記錄

2013-12-17 10:02:30

越獄iOS7

2010-03-10 10:55:14

2025-02-06 07:26:35

點贊
收藏

51CTO技術棧公眾號

久9re热视频这里只有精品| 三级4级全黄60分钟| 在线成人激情黄色| 在线免费一区三区| 丁香桃色午夜亚洲一区二区三区| 欧美三级网页| 欧美天天综合| 黄色成人美女网站| 91成人午夜| 国产成人免费高清视频| 不卡一区在线观看| 国产精品videosex性欧美| 国产一区二区视频在线看| 波多野结衣久久| jizz在线观看中文| 一本一道波多野毛片中文在线| 99爱视频在线| 永久免费精品视频网站| 豆国产97在线| 成人性生交xxxxx网站| 国产精品久久久久久久久粉嫩av| 国内精品美女av在线播放| 亚洲人成人99网站| 亚洲一级黄色av| 日韩激情av在线播放| 欧美sm极限捆绑bd| 亚洲午夜一区二区| 欧美性色19p| 欧美夫妻性生活| 日韩一区二区精品葵司在线 | 99国内精品| 久久精品一区| 日本欧美加勒比视频| 久久久久蜜桃| 99精品久久| 国产高清久久久| 国产精品你懂的| 1024国产精品| 欧美三级电影精品| 日韩欧美一区二区三区在线| 在线成人激情黄色| 亚洲国产精品中文| 北条麻妃久久精品| 国产欧美一区二区白浆黑人| 久久精品女人的天堂av| 精品国偷自产一区二区三区| 国产freexxxx性播放麻豆| 国产原创精品在线| h网站久久久| 国产综合av| 日本精品在线播放| 久久密一区二区三区| 伊人久久大香线蕉精品组织观看| 欧美区日韩区| 波多野结衣在线一区| 天天综合网天天综合色| 精品国产网站在线观看| 日韩在线视频导航| 国产精品日本精品| 丰满人妻一区二区三区53号 | а√资源新版在线天堂| 国产调教精品| 日韩国产在线一| 国产香蕉久久精品综合网| 亚洲国产另类av| 日韩欧美在线观看一区二区三区| 在线观看亚洲区| 91天堂在线视频| 欧美日韩精品免费看 | 欧美在线观看在线观看| 性xxxxfreexxxxx欧美丶| 五月天久久网站| 国产日韩欧美激情| 69p69国产精品| 成人激情春色网| av手机天堂| 成人噜噜噜噜| 精彩视频一区二区三区| 懂色aⅴ精品一区二区三区蜜月| 日韩亚洲欧美中文在线| 久久久久久久久久久久久久一区 | 亚洲欧美另类图片| 欧美va在线| 在线亚洲欧美| 欧美三日本三级三级在线播放| 久久色免费在线视频| 色狠狠久久av五月综合| 一二三区高清| 盗摄牛牛av影视一区二区| 972aa.com艺术欧美| 在线午夜精品自拍| 在线视频不卡一区二区| av中文在线资源库| 激情另类综合| 欧美图片一区二区三区| 国产精品免费观看高清| 91免费版在线观看| 欧美国产一区二区三区激情无套| 亚洲va久久| 视频免费裸体网站| 国产精品亲子伦av一区二区三区| 久久66热re国产| 欧美一级免费大片| 视频三区二区一区| 人人九九精品| 亚洲永久免费| 精品久久久久久久久久久久包黑料 | 亚洲国产国产亚洲一二三| 777午夜精品视频在线播放| 好吊妞www.84com只有这里才有精品| 欧美3p视频在线观看| 欧美三级小说| 亚洲精品在线一区二区| 日本a在线天堂| 97一区二区国产好的精华液| 国产一区二区0| 精品日韩在线一区| 成人黄色片免费| 人人香蕉久久| 91高清在线观看| 日本在线观看一区| 欧美成人一级| 色综合中文字幕| 四虎永久在线精品免费一区二区| 黄瓜视频成人app免费| 久久人人爽爽爽人久久久| 成人夜晚看av| 黄色免费网站在线观看| 粉嫩aⅴ一区二区三区四区五区| 欧美xxxx做受欧美| 免费理论片在线观看播放老| 亚洲麻豆一区| 高清视频欧美一级| 成人性爱视频在线观看| 欧美gayvideo| 日韩视频―中文字幕| 中文字幕网在线| 国产在线播精品第三| 91爱视频在线| 伊人网在线观看| 国产精品自在欧美一区| 亚洲在线观看视频| 涩涩涩视频在线观看| 色哟哟一区二区| 一本久道久久综合| 日韩国产欧美| 欧美老女人xx| 男人的天堂在线视频| 成人性色生活片| 国产视频精品网| 一级毛片精品毛片| 亚洲精品一区在线观看香蕉| 黄色片免费在线| 久久精品无码一区二区三区| 天堂精品一区二区三区| 国产精品99视频| 在线午夜精品自拍| wwww亚洲| 欧美二区三区91| 福利网址在线| 国产精品免费观看视频| 波多野结衣乳巨码无在线| 午夜影院日韩| av噜噜色噜噜久久| 中日韩免视频上线全都免费| 色综合天天综合网国产成人网 | 亚洲第一色在线| 撸视在线观看免费视频| 一级日本不卡的影视| 拔插拔插海外华人免费| 日韩精品一级中文字幕精品视频免费观看 | 国产精品久久久久久久久搜平片| 亚洲精品一品区二品区三品区| 欧美激情视频一区二区三区在线播放 | 精品伦理一区二区三区| 在线成人av| 久久久水蜜桃| 日本在线不卡一区| 欧美高清性xxxxhd| 国产精品地址| 91在线观看免费高清| 久久93精品国产91久久综合| 亚洲欧美一区二区三区久本道91 | 毛片精品免费在线观看| av影院在线| 精品国产91久久久久久久妲己| 国产在线看片| 亚洲国产精久久久久久久| av片在线观看网站| 欧美自拍丝袜亚洲| 电影av在线| 欧美一区二区视频观看视频| 美女的胸无遮挡在线观看| 91国产丝袜在线播放| 欧美78videosex性欧美| 亚洲性视频网址| 欧洲亚洲成人| 懂色中文一区二区三区在线视频| 蜜桃一区二区三区四区| 日本免费高清一区二区|