iOS Pentesting Checklist

Reading time: 9 minutes

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする

準備

  • iOSの基本を読む
  • iOSテスト環境を読んで環境を準備する
  • iOS初期分析のすべてのセクションを読んで、iOSアプリケーションをペンテストするための一般的なアクションを学ぶ

データストレージ

キーボード

ログ

バックアップ

  • バックアップはファイルシステムに保存された機密情報にアクセスするために使用される可能性があります(このチェックリストの最初のポイントを確認してください)
  • また、バックアップはアプリケーションの設定を変更するために使用される可能性があり、その後バックアップを電話に復元すると、変更された設定読み込まれ**、一部の(セキュリティ)機能バイパスされる可能性があります。

アプリケーションメモリ

壊れた暗号化

ローカル認証

IPCを通じた機密機能の露出

  • カスタムURIハンドラー / ディープリンク / カスタムスキーム
  • アプリケーションがプロトコル/スキームを登録しているか確認する
  • アプリケーションがプロトコル/スキームを使用するために登録しているか確認する
  • アプリケーションがカスタムスキームから受信することを期待している機密情報の種類を確認し、同じスキームを登録している別のアプリケーションによって傍受される可能性があるか確認する
  • アプリケーションがカスタムスキームを介してユーザー入力を確認およびサニタイズしていない場合、脆弱性が悪用される可能性があるか確認する
  • アプリケーションがどこからでも呼び出すことができる機密アクションを公開しているか確認する
  • ユニバーサルリンク
  • アプリケーションがユニバーサルプロトコル/スキームを登録しているか確認する
  • apple-app-site-associationファイルを確認する
  • アプリケーションがカスタムスキームを介してユーザー入力を確認およびサニタイズしていない場合、脆弱性が悪用される可能性があるか確認する
  • アプリケーションがどこからでも呼び出すことができる機密アクションを公開しているか確認する
  • UIActivity共有
  • アプリケーションがUIActivitiesを受信できるか、特別に作成されたアクティビティで脆弱性を悪用できるか確認する
  • UIPasteboard
  • アプリケーションが一般的なペーストボードに何かをコピーしているか確認する
  • アプリケーションが一般的なペーストボードのデータを何かに使用しているか確認する
  • ペーストボードを監視して、機密データがコピーされているか確認する
  • アプリ拡張
  • アプリケーションは拡張を使用していますか
  • WebViews
  • 使用されているWebViewの種類を確認する
  • javaScriptEnabledJavaScriptCanOpenWindowsAutomatically、**hasOnlySecureContent**の状態を確認する
  • WebViewがfile://プロトコルでローカルファイルにアクセスできるか確認する(allowFileAccessFromFileURLsallowUniversalAccessFromFileURLs
  • Javascriptがネイティブメソッドにアクセスできるか確認する(JSContextpostMessage

ネットワーク通信

その他

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする