脱獄検出メカニズムについて話しているさまざまな投稿を調べました。私が遭遇したものは何でも、審査プロセス中にアップルが拒否するものか、バイパスできるもののいずれかです. また、Apple が脱獄 API を削除したことも知りました。
それで、デバイスが脱獄されているかどうかを確認できる誰にでもできるメカニズムはありますか?
いいえ、絶対確実な方法はありません。
これが誰にでもできるとは言えませんが、少なくとも一部のケースでは (すべてではないにしても) 機能することはわかっています。私はこのコードを App Store アプリの 1 つに 6 か月と 4 回のアップデートで使用していたので、Apple はこれで問題ないようです。
if ([[NSFileManager defaultManager] fileExistsAtPath:@"/bin/bash"] ||
[[NSFileManager defaultManager] fileExistsAtPath:@"/Applications/Cydia.app"] ||
[[NSFileManager defaultManager] fileExistsAtPath:@"/private/var/lib/apt"]) {
// Device is jailbroken
}
優れたハッカーであれば、このコードをノーオペレーションにする方法をおそらく見つけることができます。これをよりハッカーに証明することは、読者に任された課題です。
このアプリを使用して、ジェイルブレイクされたデバイスを検出します。
ジェイルブレイク検出をバイパスする 2 つの方法
Bypass Jailbreak Checks については、このブログの興味深い内容をご覧ください。