iOS - 如何避免列出已安装的应用程序?
iOS - How to avert listing of the installed apps?
我有一台安装了 Undecimus 的 iOS 设备。当我尝试启动非越狱专用游戏 Tapsonic TOP 时,它会以某种方式读取我的应用程序列表并显示 "Illegal program detected" 并自行退出。我在越狱和不越狱的情况下都尝试过这个,我确实做了一些调整来隐藏越狱检测,所以这不太可能是越狱问题。
我在 Whosebug 上进行了搜索以了解这是如何实现的。一种方法是读取应用程序文件夹以检索文件列表,另一种方法是保留应用程序白名单并使用 canOpenUrl
检查每个应用程序是否存在。
Is it possible to get installed apps in ios
是否可以修改系统,使其在没有SU权限的情况下读取应用程序文件夹时return只列出系统应用程序目录,而在检查[=11时始终return false =]?
经过一段时间的研究,我弄清楚了幕后发生的事情。
真相:
游戏通过越狱检测检测到 "illegal" 用户,而不是通过检索已安装的应用列表。
详情:
我把游戏的可执行文件从iPhone拉到IDA里,在函数window里搜索关键词'jail',结果发现有一个方法叫做 +[PmangPlus 设备越狱]。基本上该方法检查了几个文件(包括 /Applications/Cydia.app,/Applications/RockApp.app,/Applications/Icy.app 等),如果这些文件中的任何一个存在,该方法将 return @"Y",否则@"N".
然后我写了一个 substrate tweak 来绕过这个检测,它 worked.This 通过挂钩方法和 returns @"N".
来工作
希望对您有所帮助。
我有一台安装了 Undecimus 的 iOS 设备。当我尝试启动非越狱专用游戏 Tapsonic TOP 时,它会以某种方式读取我的应用程序列表并显示 "Illegal program detected" 并自行退出。我在越狱和不越狱的情况下都尝试过这个,我确实做了一些调整来隐藏越狱检测,所以这不太可能是越狱问题。
我在 Whosebug 上进行了搜索以了解这是如何实现的。一种方法是读取应用程序文件夹以检索文件列表,另一种方法是保留应用程序白名单并使用 canOpenUrl
检查每个应用程序是否存在。
Is it possible to get installed apps in ios
是否可以修改系统,使其在没有SU权限的情况下读取应用程序文件夹时return只列出系统应用程序目录,而在检查[=11时始终return false =]?
经过一段时间的研究,我弄清楚了幕后发生的事情。
真相:
游戏通过越狱检测检测到 "illegal" 用户,而不是通过检索已安装的应用列表。
详情:
我把游戏的可执行文件从iPhone拉到IDA里,在函数window里搜索关键词'jail',结果发现有一个方法叫做 +[PmangPlus 设备越狱]。基本上该方法检查了几个文件(包括 /Applications/Cydia.app,/Applications/RockApp.app,/Applications/Icy.app 等),如果这些文件中的任何一个存在,该方法将 return @"Y",否则@"N".
然后我写了一个 substrate tweak 来绕过这个检测,它 worked.This 通过挂钩方法和 returns @"N".
来工作希望对您有所帮助。