iPhoneの脱獄とは何ですか? 脱獄が行われたかどうかを確認する方法は? 脱獄が行われたかどうかを確認する方法

この記事では、ジェイルブレイクとは何か、そのタイプ、長所と短所について詳しく説明します。 逐語的 脱獄英語から「プリズンブレイク」と訳されています。 ジェイルブレイクは、ファイルシステムに自由にアクセスできるようになるプロセスです。簡単に言えば、iPhone、iPad、iPodTouchのファームウェアをハッキングすることです。 多くの人が脱獄とロック解除(ロック解除、ロック解除、ロック解除)を混同していますが、これらはまったく異なるものです。 ロックインの詳細については、をご覧ください。

と接触している

脱獄のメリット

-何らかの理由でAppStoreに正式に配置できない微調整からアプリケーションをインストールする機能。 iOSの見た目を完全に変えたり、iPhoneやiPadの機能を拡張したりできるものがあります。
-AppSoreからハッキングされた有料アプリケーションを無料でインストールする機能。
-iPhoneのロックを解除(ロック解除、ロック解除)するプロセスで、携帯電話会社のSIMカードと連携する機能。 ジェイルブレイクのロック解除は、最初のiPhoneモデル(iPhone 4まで)にのみ関連します。

脱獄は合法であり、少なくとも米国では完全に合法です。 2010年の夏、米国政府は脱獄を合法化することを決定しました。 脱獄はどのような害をもたらす可能性がありますか? 脱獄しようとしたときに起こりうる最悪の事態は、iPhoneのフリーズです。 一部のユーザーは、これは修復不可能であると信じています。実際、たとえば、の助けを借りて、簡単に動作状態に復元できます。

脱獄のデメリット

-ジェイルブレイクされたiPhoneおよびiPadは、新しいバージョンのiOSに更新できません。
-ジェイルブレイクされたデバイスは保証の対象外ですが、iTunesを使用していつでも工場出荷時の設定に復元できます。 Appleサービスの従業員は、デバイスがジェイルブレイクされたことを証明できません。

脱獄の種類

-デバイスが再起動された後、アンテザード(フル、アンテザード)ジェイルブレイクが機能します(クラッシュしません)。 これは、テザー脱獄との主な違いです。
-テザージェイルブレイクは、デバイスが再起動されるまでのみ機能します。 シャットダウンまたは再起動が発生した場合、デバイスの電源は再びオンになりません(ロード時に白いリンゴに「ハング」します)。 通常の操作を有効にするには、特定のプログラムを使用してデバイスを起動する必要があります。 この場合、デバイス上のすべてのデータ(プログラム、音楽、ビデオなど)が損傷することはありません。

近年、ハッカーはWeb上でテザー脱獄を取得するためのツールを投稿していません。

脱獄に関するよくある質問

質問:脱獄後にiTunesとApp Storeを使用できますか?
答え:はい、確かにそうかもしれません! 脱獄は、AppStoreへのアクセスにはまったく影響しません。 最も顕著な変化は、デバイス上の新しいアプリケーションであるCydiaの出現です。

質問:Cydiaとは何ですか?
答え:当社のWebサイトには、この問題に特化した別のセクションがあります。 しかし、要するに、Cydiaの機能はAppStoreの機能と同じです。 これは、AppStoreに配置するためのアプリケーションが何らかの理由でAppleによって拒否された開発者からのアプリケーションをホストします。 Cydiaにも有料アプリがありますが、ほとんどは無料です。 アプリケーション(微調整)、着信音、テーマをインストールできます。

質問:脱獄を削除する方法は?
答え:デバイス()を公式ファームウェアに復元(フラッシュ)すると、ジェイルブレイクが完全に削除されます。

質問:脱獄を可能にするプログラムはいくらですか?
答え:すべての脱獄ソフトウェア、ハッカーが配布 無料です時々寄付を求めます。

iPhone、iPad、iPodTouchを脱獄する方法。

脱獄については多くの誤解があり、その多くは毎年聞かれます。 これらのどれが本当ですか? 脱獄はあなたのiPhoneとiPadの保証を無効にしますか? 脱獄するのはどれくらい難しいですか? それをすることさえ意味がありますか?

この記事では、最も一般的な10の脱獄神話をリストします。 ユーザーがデバイスをハッキングする理由と、恐れてはいけないことについて説明します。

脱獄は保証を無効にします

脱獄は永続的ではありません。 保証部門に連絡したい場合は、Cydia Impactorを使用して脱獄の痕跡をすべて消去するか、iTunesを使用してiOSを最初から復元します。 その後、Appleはあなたのデバイスが脱獄されたことがあるかどうかを知りません。

脱獄はパフォーマンスを低下させます

もちろん、多くの微調整をインストールすることができ、一部はガジェットの速度を低下させる可能性があります。 ただし、ガジェットに何を置いたかを追跡していれば、パフォーマンスが低下することはありません。 さらに、微調整の助けを借りて、あなたはiPhoneをスピードアップすることができます。

脱獄はiPhoneの安全性を低下させます

繰り返しますが、インストールするソフトウェアに注意する必要があります。 同様に、脱獄はスマートフォンをより安全にすることができます。 特に、脱獄開発者は、Apple自体よりも早くiOSのバグ修正をリリースしました。 疑わしいリポジトリ、著作権侵害、疑わしい微調整を避け、OpenSSHまたはAFC2をインストールしてOSを開かない限り、完全に安全です。

脱獄禁止

実際、これは事実ではなく、誰もあなたがあなたのデバイスを脱獄することを禁止する権利を持っていません。

暗い性格のための脱獄

一部の人は、脱獄は疑わしいものであると信じています。これは、暗い路地で奇妙な人格によって行われています。 しかし、それは愚かです。 脱獄は、専門家と初心者、両親、子供、有名人、ミュージシャンなど、まったく異なる人々によって行われます。 ジャスティンビーバーはかつて脱獄したiPhoneを使用していました。

脱獄は難しい

iPhone、iPad、またはiPod touchを、朝のコーヒーを作るのにかかる時間よりも短い時間で脱獄します。 私を信じてください-それはとても簡単です、そして誰もが問題なくそれをすることができます。

脱獄は無料ではありません

脱獄は支払うことができません。 インターネットでは、多くの教育記事やビデオを見つけることができます。 あなたが支払うことを申し出られた場合、あなたは単にだまされています。

脱獄はバッテリー寿命を縮めます

これにはいくつかの真実がありますが、スマートフォンでゲームをプレイすることもバッテリーに悪影響を及ぼします。 微調整を慎重に選択すると、ガジェットのバッテリーを節約できます。 ジェイルブレイクの単なる事実は、デバイスが自動的に速く消耗することを意味するものではありません。 さらに、ガジェットの自律性を高めるための調整があります。

脱獄は海賊行為のために作られています

実際にはそうではありません。 一部の人々は脱獄されたデバイスに海賊版ソフトウェアをインストールする機会を利用しますが、これは間違いなく脱獄の理由ではなく、それを行う理由でもありません。 違法なアプリケーションのためではなく、iPhoneとiPadをパーソナライズできるため、ほとんどの場合脱獄に頼っています。

脱獄はもう必要ありません

工場ファームウェアを搭載したiPhoneにテーマをインストールできますか? または、別のアプリの上でビデオを実行しますか? それとも、Appleはあなたが信じられないほど遅いiOSアニメーションをスピードアップすることを可能にしますか? iPhoneのファイルシステムにアクセスできますか? または、iPhoneでスクリーンキャストを録画しますか? コントロールセンターでトグルをカスタマイズできますか? いいえ。 しかし、これはすべて、Cydiaの脱獄調整の助けを借りて行うことができます。

脱獄についてどう思いますか? 他の神話を聞いたことがありますか? コメントで私たちと共有してください!

可用性を判断する最も簡単な方法は、iPhone、iPod touch、またはiPadのアイコンを探すことです。 Cydia。 3.1.3より前のファームウェアを搭載した古い世代のiPhoneおよびiPodtouchでは、Cydiaの代わりにIcy、Rock Your Phone、Installerなどの別のパッケージマネージャーがインストールされる場合があります。

フォルダ内のCydiaアイコンを検索しないようにするには、最初のiOSデスクトップのホームボタンをすぐに押して、検索バーに「Cydia」または別のパッケージマネージャーの名前を入力することをお勧めします。

ただし、この方法では、ジェイルブレイクされたiPhone、iPod touch、またはiPadでアイコンを非表示にできるため、完全な保証はありません。

なぜあなたは脱獄の存在を隠す必要があるのでしょうか?

彼らのトラックをカバーするために、売り手はCydiaアイコンを隠すことができます。 したがって、最初にiPhoneの設定に移動し、「アクティベーター」などの追加メニューがあるかどうかを確認します。 はいの場合、脱獄が行われます。 メニューがない場合は、アイコンを非表示にするための設定にアクセスするためのメニューにアクセスするために使用できる標準のジェスチャとアクションを試してください。

  • ダブル/トリプルタップして、ステータスバー(時計のライン)を任意の方向に2本または3本の指でスワイプ(スワイプ)します
  • ホームボタンを短く、長く、または3回押す
  • 画面の両側と隅から1本、2本、3本の指でスワイプします

iPad、iPod touch、およびApple TVはロックされないため、ジェイルブレイクの影響を受けないことに注意してください。

脱獄の兆候を見つけたらどうなりますか?

売り手が脱獄が行われていないと言って、脱獄の兆候を見つけた場合は、さようならを言う方が良いです。 しかし、それでもそのような人からiPhoneを購入したい場合は、必ず。

Apple TVで脱獄をチェックする方法は?

Apple TVの場合、状況はより単純です。脱獄は通常、サードパーティのアプリケーションの存在によって計算できます。たとえば、次のようになります。

  • メディア
  • 天気
  • Last.fm

iPhoneの脱獄については、作業全体を通して話します。iPhoneがなければ、iPhoneの脱獄をインストールするからです。 iPhoneリスニングソフトウェア- 無理だよ! ほとんどの脱獄の指示は技術的であり、物事を迅速かつ簡単にやりたい人を混乱させます。 今日は、この「ひどい」刑務所について、それが何であるか、そしてそれをどのように作るかについて、できるだけ簡潔かつ簡単にあなたに話そうとします。

脱獄とは何ですか?

iPhoneは、他の製品と同様に、Appleのソフトウェアでのみ動作するように設計されています。 したがって、利益を増やし、iOSソフトウェアの販売市場を管理することに関心のある企業はたくさんあります。 iPhoneがリリースされた後、これらの同じ会社のハッカーは、サードパーティのプログラムが電話のシステムプロセスにアクセスできるように、電話のソフトウェアを変更する方法を考え出しました。 これがジェイルブレイクです。iPhoneの所有者は、サードパーティのアプリケーションを他社からダウンロードできます。

ジェイルブレイクには2つの異なるタイプがあります-テザー(つまり、電話を再起動した後、「ジェイルはなくなります」)とアンテザー(永続的)です。

iPhoneが脱獄されているかどうかをどうやって知るのですか?

アプリケーションメニューに移動し、Cydiaアイコンを探します。 このアプリケーションが表示されている場合、刑務所はすでに携帯電話で実行されています。

人は自分のiPhoneにスパイウェアがあることを理解できるので、Cydiaを隠す方法は?

私たちのすべては、Cydiaアイコンを隠す機能を持っています。 プログラム設定のチェックボックスをオンにするだけで、Sidiaがデスクトップから消えます。

脱獄は合法ですか?iPhoneの保証はどうですか?

はい、それはすべて合法です! あなたが心配しなければならない唯一のことは、iPhoneが脱獄された場合、あなたのApple保証が無効になるということです。 保証を利用したい場合は、iTunesを介して携帯電話をフラッシュする必要があります!

脱獄する方法は?

まず、jailプロセスはファームウェアバージョンごとに異なります。 iPhoneに搭載されているファームウェアのバージョンを確認するには、次のURLにアクセスしてください。 設定-一般-デバイスについて、ここのバージョンセクションには、iPhoneのファームウェアバージョンが示されています。

それで、あなたはバージョンを学びました、今どのように刑務所に入れますか? 私のアドバイスは、サイトijailbreakguide.comまたはwww.ukrainianiphone.comを使用してください。彼らは常に最新情報を把握し、各ファームウェアを投獄する方法を詳細に説明しています。 私は彼らのサイトから詳細な説明へのリンクを拾いました。

「ジェイルブレイクされた」Appleデバイスは、新機能であるだけでなく、デバイス自体とその上で実行されているアプリケーションの追加のセキュリティ問題でもあります。 今日は、脱獄とは何か、それがどのように機能するか、そしてそのセキュリティへの影響についてお話します。

脱獄とは何ですか?

したがって、脱獄は、エクスプロイトを通じていくつかのシステムセキュリティ制限を取り除くための特別なプログラムです。 時が経つにつれて、この定義は、Appleのデバイス(iPod、iPad、Apple TV、iPhone)のハッキングに明確に割り当てられました。 この名前は、サンドボックスを壊すという主な目的に関連して付けられましたが、このサンドボックスは非常に優れているため、刑務所(刑務所)と呼ばれていました。 Android OSを実行しているデバイスの場合、ほぼ同様のプロセスがルート化と呼ばれ、ルートとして実行するという最終的な目標に関連しています。 また、これらの用語をロック解除の概念と混同しないようにする必要があります。これは、電話の購入で確立された携帯電話事業者の拘束を解除することを意味します。 また、ジェイルブレイクはハードウェアとソフトウェアに依存することを理解する必要があります。ジェイルブレイクの基礎となるエクスプロイトは、ハードウェアとソフトウェアの両方のコンポーネントの機能を使用できます。 したがって、OC Yを備えた一部のデバイスXにジェイルブレイクが存在するからといって、OSYを備えたデバイスZまたはOSKを備えたデバイスXでのパフォーマンスを意味するわけではありません。

同時に、脱獄自体には2つのタイプがあります。

  • つながれた(取り付けられた);
  • アンテザード(未接続)。

アタッチされているとは、そのようなデバイスを再起動するとJBが消え、アタッチされていないデバイスの場合は有効なままになることを意味します。これははるかに便利です。

なんで?

私は、脱獄を必要とする人々の3つの主要なカテゴリー、つまり開発者、一般ユーザー、および情報セキュリティ研究者を選び出します。
1つ目は、iOSの内部で何が起こっているかを調べ、その隠された機能を使用して、アプリケーションを可能な限り最適化することです(場合によっては、プライベートAPIを使用します)。 2つ目は、微調整を使用するためです(通常は最初に記述されます)。 Tweakは、使いやすさを向上させるためにiOSに何らかの変更を加える小さなソフトウェアです。 これは、新しいアイコンのセット、SpringBoardへの新しいツールチップの挿入、またはApp Storeのパスワードの記憶である可能性があります。一般に、ユーザー側からは便利で便利に見えますが、Appleによって実装されていないものはすべてです。 そして最後に、セキュリティ研究者は、OS自体とそこで回転しているすべてのものを掘り下げるために脱獄する必要があります。 最も一般的なシナリオは、iOS用のモバイルアプリケーションのセキュリティを分析することです。 ご存じない場合は、App StoreのすべてのiOSアプリケーションがDRMによって保護されており、実行時に復号化されたアプリケーションのみを取得できます。 この操作は現在、ジェイルブレイクされたデバイスでのみ可能です。 はい、好ましくない国とその指導者のスパイや攻撃のためにここに公務員を追加することもできます。 たとえば、オバマ氏はすでに彼のセキュリティサービスによってiPhoneの使用を禁止されています。 軍隊の脱獄への高い関心のために、公共の脱獄は完全に消える可能性があるという意見があります:彼らがあなたに緑の山を注ぐ準備ができているときになぜ無料で何かを投稿するのですか...

もちろん、Apple自体は脱獄を否定的に扱い、ユーザーに警告します。 サードパーティの人々がクローズドOSに変更を加え、これらの変更を保存するためにOSセキュリティシステムに違反しているため、これは明らかです。コードの特定の部分にパッチを適用してハッキングします。 もちろん、これはOCの安定性の侵害につながります-これは、脱獄を行うときに覚えておく価値があります。

脱獄-セキュリティリスク

JBはOSのセキュリティメカニズムのほとんどを無効にします。これに関連して、マルウェアがデバイスに感染する恐れがあります。 これは、Cydiaから誤ってダウンロードされたマルウェア(誰もチェックしていない)か、ZitMo、SpitMo、CitMoの精神に基づく標的型攻撃のいずれかである可能性があります。 そのようなプロジェクトが存在しないと思うなら、あなたは間違っています。 iPhone-Espionageというプロジェクトがあります。これには次のような機能が含まれています。

  • キーロガー;
  • スクリーンショットをキャプチャします。
  • SMSリダイレクト;
  • マイク録音;
  • GPS座標を送信します。

それどころか、コミュニティの観点からは、これは明るく広く議論されているイベントであり、フォーブスなどの出版物によっても回避されることはありません。 JB開発者は、独自のワールドワイドジェイルブレイクコンを持っており、そこでは互いに情報を共有しています。 また、saurik(違法なiOSアプリストアであるCydiaの作成者)によると、2013年3月2日の時点で、世界中に2,300万台のジェイルブレイクされたデバイスがありました。

とはいえ、外部から脱獄を作成するプロセス全体は、Appleと開発者の間の猫とマウスのゲームに似ています。 脆弱性を閉じてOSに新しいセキュリティメカニズムを導入するものもあれば、リリースを待って子孫をテストするものもあります。


iOSのセキュリティ

十分な前奏曲で、脱獄の技術的要素に飛び込み始めましょう。 JBの邪魔になるiOSのセキュリティメカニズムについて少し理解しましょう。

  • コード署名。 Appleによる検証後、アプリはDRMで保護されます(X.509v3証明書を使用)。 そのため、Appleによって署名されたアプリのみがデバイスで実行できます。
  • サンドボックス(シートベルト)。 App Storeからインストールされる各アプリケーションは、独自のサンドボックスで動作します。 独自の作業ディレクトリ/var/ mobile /Applications/があります それを超えると何も見えなくなります。 また、これは他のプロセスにも当てはまるため、アプリケーションはシステム内に他に誰が存在するかを認識していません。 より微妙な点の中で、デバイスのハードウェアへの直接アクセスの欠如と動的にコードを生成できないこと(JIT)を特定することができますが、唯一の例外はSafariです。
  • 特権の分離。 各アプリケーションは、モバイルユーザーの下で制限付きの権限で実行され、いくつかの資格があります。

もちろん、JBプロセスはメモリ破損のバグを悪用する必要があるため、このような脆弱性の悪用を困難にすることを目的としたさまざまなセキュリティメカニズムをバイパスする必要もあります。 それらの中には、スタックCookie、DEP、ASLR、KASLR、および特別な名前すら持たない他の多くのものがあります。 これについては詳しく説明しません。デバイス上のJBを検出するのに役立つことはなく、一般に、この記事の範囲を超えています。

少しの歴史と数字

  • 2007年6月29日、AppleはiOS1.0オペレーティングシステムを搭載した新しいiPhoneを発表しました。 11日後、OSがハッキングされました。
  • 脱獄:PwnageTool、redsn0w、purplera1n、Spirit、JailbreakMe、Absinthe、evasi0n。
  • 主な顔:iPhone Dev Team、Chronic Dev Team、George Hotz、comex、pod2g、evad3rs、そしてもちろんsaurik。
  • テザードJBは、Appleが現在のすべてのセキュリティ機能を提供したバージョン3.0(100日弱)を除いて、1週間以内に作成されました。
  • 取り付けられていないものは出てくる頻度がはるかに少なく、ハッキングに時間がかかり、取り付けられているものと比較すると、平均で7〜8倍の時間が増加しています。

JB後の生活

私たちのメイントピックに取り掛かりましょう。 JBにデバイスがあるかどうかを検出する方法を理解するには、JBが何をしたか、変更したか、取り残されたかを理解する必要があります。 それで、あなたはJBを置きます-あなたのためにどんな新しい面が開かれましたか?

  1. 署名されていないアプリケーションの実行。 これで、Cydiaやその他のサードパーティのリポジトリからアプリケーションをインストールできます。 通常、さまざまなシステムアプリケーションがあり、Appleのテストに合格しなかった(そして合格することはない)微調整があります。これは、プライベート機能を使用するか、本格的な作業にJBが必要になるためです。 ただし、このソフトウェアはチェックされていないため、マルウェアが含まれている可能性があります。これを忘れないでください。 特に、JBがほとんどの保護メカニズムを無効にしているという事実と相まって。 主な効果:Cydiaおよびその他の無許可のAppleアプリケーション。
  2. FSへのアクセスの可能性。 SSHなどを介してファイルシステムと対話するためのアクセス権があります。 システムのすべてのディレクトリをナビゲートし、システム内の任意のファイルをコピー/編集/ダウンロード/アップロードすることが可能になります。 主な効果:新しいファイルの出現、標準ファイルの変更。
  3. サンドボックスの制限をバイパスします。 Sandboxは現在、他の多くのセキュリティメカニズム(コード署名の検証など)のように機能しておらず、システム内のすべてのアプリケーションは、自身のディレクトリだけでなく、システム内のすべてのファイルをすでに認識できます。 主な効果:以前はアクセスできなかったものにアクセスする機能。

これらの効果を試してみます-JBを検出してください!


J.B.の結果

結果1:FSの変更

/ dev / disk0s1 / hfs ro 0 1 / dev / disk0s2 / private / var hfs rw、nosuid、nodev 0 2

/ dev / disk0s1 / hfs rw 0 1 / dev / disk0s2 / private / var hfs rw 0 2

JBがインストールされた後、/ etc/fstabが変更されます。 /ディレクトリは書き込み可能になり、/ private/varディレクトリはnosuidのnodevビットを失います。

結果2:追加のユーティリティ

デフォルトでは、iOSデバイスにはUNIXシェルはありません。 これは理解できることですが、Appleは、コンソールからデバイスを操作する機能をデバイスに含めていませんでした。 この点で、JBはインストールを簡素化するためにさまざまな便利なプログラムを配置しています。 その結果、JBのユーティリティ、JB自体のファイル、さまざまなバンドル、Cydia(通常は必須ではありません)、モバイル基板など、多数の新しいユーティリティがデバイスに表示されます。 これらの新機能のいくつかは、変更された/var/mobile/Library/Caches/com.apple.mobile.installation.plistで確認できます。

結果3:フォルダの再配置

AppStoreのアプリは/var/ mobile / Applicationsに配置され、Cydiaのアプリは/Applicationsに配置されます。 システムディレクトリ(/)はユーザーディレクトリ(/ private / var)よりもはるかに小さく、Cydiaのアプリケーションがシステムディレクトリにインストールされているため、使用可能なスペースに問題があります。 これを解決するには、必要なディレクトリから十分なスペースがあるユーザーディレクトリへのシンボリックリンクを作成します。 その結果、このメソッドの式は次のようになります。/ var /stash+シンボリックリンク。 / Library / Ringtones、/ Library / Wallpaper、/ usr / include、/ usr / lib / pam、/ usr / libexec、/ usr/shareについても同じことが行われます。


結果4:壊れたサンドボックス

これらの変更はバイナリレベルで非常に低く発生し、私たちにはあまり役に立ちませんが、それらについて言わないことは不可能です。 まず、JBは、署名の検証を担当するApple Mobile FileIntegrityDaemonにパッチを適用しています。 次に、カーネル自体に変更を加えます。

//プロセスのMACを無効にしますsecurity.mac.proc_enforce=0//VnodeのMACを無効にしますsecurity.mac.vnode_enforce=0

  • 新しいファイル/ディレクトリの出現。
  • 変更されたプロパティ。
  • 動作が変更されました。

検出

不思議に思うかもしれませんが、iPhoneアプリ開発者として、アプリが実行されているデバイスを確認するのはなぜですか? 質問は良くて論理的です。

まず、ユーザー自身のリスクを軽減します。 モバイルバンキングなど、ある種の重要なモバイルアプリケーションを開発している場合、そのようなデバイスでマルウェアが実行される可能性があるため、アプリケーションの起動を禁止するか、使用可能な機能の一部を制限することができます。 、送金を禁止するか、上限に制限してください。 私はロシアのモバイルバンキングアプリケーションでそのようなアプローチを見てきました。 また、MDM(モバイルデバイス管理)システムでもよく使用されます。

次に、コードに導入された制限をバイパスしないようにします。 クライアントに対する制限は悪です。

第三に、アプリケーションの分析を複雑にします。 誰かがあなたのプログラムのアルゴリズムを研究したいと思うかもしれません、そしてここでは静的を行うことができません-ダイナミクスも必要です。 そして、人生が彼にとってはちみつのように見えないように、あなたは仕事をやめるか、間違った道を進むことができます。

少し前、つまりiOS 4.0から4.2.1まで、AppleのMDMAPIにはJBを定義するための特別な関数がありました。 しかし、それは長くは続かなかった-6ヶ月未満。 Appleは、この機能を削除する理由についてコメントしていません。 あるバージョンによると、この機能は危険であり、それ自体がJB攻撃につながる可能性があります。

JB検出:新しいファイル。

  1. Cydiaのファイル(例:/Applications/Cydia.app/)またはそれに付属するcydia://URIスキームを参照できます。 この方法は非常に一般的ですが、Cydiaは単なるバンドルであり、JBに含まれていないか、削除されていない可能性があることに注意する必要があります。 たとえば、iOS 7用のevad3rsの最新のJBを取り上げます。Cydiaはありませんが、Chinese AppStoreTaigはあります。
  2. /bin/bash、/Application/Preferences.app/General.plist、/Applications/MobileMail.appなど、サンドボックスの外部にある既知のファイルにアクセスしてみてください。
  3. 当然、脱獄ファイルは無視できません-たとえば、/ private / var/stash。 それらはたくさんあり、最初にシステムの変更日によって決定できます。
  4. また、SSHループバック接続(127.0.0.1ポート22へのアクセス)など、よりエキゾチックな方法もあります。これは、ユーザーが通常SSHを使用してデバイスと対話するためです。

URIスキームにアクセスするには、Objective-C openURL関数を使用し、ファイルを操作するには、Obj-C関数(BOOL)fileExistsAtPath:(NSString *)path)と従来のC関数(fopen()、stat)の両方を使用します。 ()またはaccess())。

JBディスカバリー:プロパティの変更

難読化するために、ファイル自体ではなく、ファイルのプロパティを参照できる場合があります。

  • 書き込みアクセス権;
  • サイズ/etc/ fstab;
  • / var / stash c:/ Applications / Library / Ringtones / Library / Wallpaper / usr / arm-apple-darwin9 / usr / include / usr / libexec / usr/shareへのシンボリックリンクを検索します

前の段落のように、ここではすべてが単純です。 ここでも、NSFileManagerクラスのObj-C関数と、statfs()、stat()などの標準のC関数の両方を使用できます。

JB検出:動作の変更またはサンドボックスの整合性

Sandboxは、App Storeのアプリがfork()、popen()、またはその他のC関数を使用して、jailの外部のデバイスに子プロセスを作成することを防ぎます。 そこで、これらの関数を呼び出して結果を確認しようとします。 または、system()を呼び出して、サンドボックスが実行されている場合は0を返し、ジェイルブレイクの場合は1を返すことができます。 これは、/ bin/shがJBデバイスに存在するためです。 さらに洗練された方法は、 dyld画像 count()と dyld得る image_name()を使用して、現在ロードされているdylibを確認します-JBに独自の詳細が設定された後。 ただし、この方法にパッチを適用するのは非常に困難です。

JBディスカバリーバイパス

検出が検出できれば、検出プロセスも検出できます。 そして、それを正しい方法で変更します:)。 主に3つの方法があります。

  1. バイナリファイルの編集。 バイナリで指定されたコード自体にパッチを適用します。 たとえば、アプリケーションがファイル/Applications/Cydia.app/の存在によってJBの存在を検出した場合、バイナリで直接CydiaをFydiaに修正でき、そのようなファイルはシステムで検出されなくなります。チェックは失敗します。 条件付き遷移から無条件遷移など、ARMコードにパッチを適用することもできます。 ARMの命令パッチは、ARM内のすべての命令の長さが固定されているという事実も単純化します。
  2. MobileSubstrateを使用してObjective-C関数をフックします。 チェックがObj-Cで実装されている場合、実行時に非常に簡単にインターセプトされ、必要な値を返すことができます。 たとえば、xConプロジェクトを見ることができます。これはそのように機能します。 一般に、JailbreakDetect、isJailbreakなどの存在について、クラス内のメソッドの名前を確認できます。次に、微調整を記述して、保護が渡されます。
  3. ランタイムゲーム(GDB、Cycript)。 チェックが別の機能の一部として実装されている場合、それを完全に置き換えることはできません。 ここでは、GDBで遊ぶ必要があります。 一般に、Linuxプラットフォームと比較して、この方法に新しいことは何もありません。

何を適用するかを知ることに加えて、それを正しく適用する方法も知る必要があります。 ここでは、iOSアプリケーションを保護する方法に関するヒントをいくつか紹介します。

  1. アンチデバッグ技術を使用します。 これはよく知られている関数ptrace(PT 拒否 ATTACH、0、0、0)およびP_TRACEDフラグ。
  2. アンチフッキング技術を使用します。 iOSでは、dladdr()呼び出しとDlを使用してフックを検出できます 情報構造。 さらに良いことに、_attribute _((常に)を使用したインライン関数としての重要なコードフラグメント(セキュリティチェック、ジェイルブレイク検出)列をなして))。
  3. コードとデータを難読化します。 Objective-Cの特異性は、クラス、関数、変数などに関する多くのメタ情報を格納することです。 他のコンパイル言語では、原則として、これらはシンボルであり、最終的なアセンブリには入らない場合、すべてが見えます。これは、リバースエンジニアにとっておとぎ話にすぎません。ロジックはすぐにわかります。 したがって、リリース前にクラス名とメソッド名の名前を変更できます。 重要なデータについては、暗号化するか動的に生成する必要があります。
  4. JBの存在を判断しようとしている場合は、1つの手法ではなく、複数の手法を使用してください。

同時に、プログラムの開始時だけでなく、コード全体にすべてのセキュリティチェックを均等に分散するようにしてください。 また、重要な安全機能にはCを使用します。そうすれば、それらに関する情報は_に表示されません。 objcセグメント。


アプリケーションの著作権侵害から保護するために、自分のファイルの整合性をチェックできます。 たとえば、実行可能ファイルの整合性-ハッキング/復号化されたすべてのLCアプリケーション 暗号化復号化されているため、INFO=0です。 または、メタデータファイル(iTunesMetadata.plist、SC_Info、コード署名、Info.plist)を確認します。

もちろん、完全で乗り越えられない防御はありません。上記の方法はすべて、リバースエンジニアリングのプロセスを複雑にするだけです。

情報

この記事には、デバイスでJBを検出するためのすべての方法がリストされていますが、類推すると、独自の方法を見つけて既存の方法を改善できます。

iOSダウンロードチェーン

まず、iOSのブートモードには、通常のブート、DFU(デバイスファームウェアアップグレード)モード、およびリカバリモードの3つがあります。 最後の2つは、詳細に立ち入らない場合、OSを特定の状態に復元するために必要です。 リカバリモードは、iTunesを介してOSを更新するために使用されます。 次の図は、通常の起動の手順を示しています。

次に、通常のブートでは、システムコンポーネントは次の順序でロードされます:Bootrom-> LLB-> iBoot-> Kernel-> SystemSoftware->Apps。

各段階で、コンポーネントの署名が検証されます。 このチェーンはどの段階でも攻撃される可能性があります。これが行われるのが早ければ早いほど、バイパスする必要のあるセキュリティメカニズムが少なくなり、最初に近づくほどアイアンに近づくため、より良い結果が得られます。 また、ハードウェアコンポーネントの脆弱性を閉じるには、製造元がハードウェア自体を交換する必要があります。つまり、このような脆弱性の存続期間は、デバイスの次のバージョンがリリースされるまでです。

トピックの続き:
デバイス

AndroidまたはiOSオペレーティングシステムを搭載した最新の携帯電話のほとんどは強力な機能を備えており、ユーザーに本格的なPCの機能と...