Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ipaforge — 依存関係不要のPython CLIで、iOSの.ipaアーカイブを展開、検査、編集、再構築し、Mach-Oバイナリと署名バンドルを保持したままplistと文字列をXMLに変換します。 | Kitploit
ツール/GitHubGitHub/vighnesh91/ipaforge
静的分析iOSセキュリティコード分析モバイルアプリペンテストリバースエンジニアリングペネトレーションテストモバイルセキュリティユーティリティとフレームワークバイナリ解析
GitHubvighnesh91/ipaforge

ipaforge

依存関係不要のPython CLIで、iOSの.ipaアーカイブを展開、検査、編集、再構築し、Mach-Oバイナリと署名バンドルを保持したままplistと文字列をXMLに変換します。

42日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
リポジトリを見る
共有

IPAForge

IPAForgeは、iOSの.ipaアーカイブを展開、検査、編集、再構築するための依存関係のないPythonコマンドラインツールです。

アーカイブ全体を抽出し、編集可能なApple plistおよびローカライズ形式を読み取り可能なXMLに変換し、不透明なコンテンツやバイナリコンテンツをバイト単位で保持し、すべての変換をipaforge.ymlに記録することで、フレームワークを忠実に再構築できるようにします。

責任を持って使用してください: IPAForgeは、相互運用性、セキュリティ研究、および正当なアプリケーション分析を目的としています。適用される法律、ライセンス、および利用規約を遵守してください。

機能

  • 標準的なiOS .ipaアーカイブをデコードおよび再構築します。
  • アーカイブの内容を100%抽出します。何も黙ってスキップまたは破棄されません。
  • 任意のファイル拡張子を持つバイナリplistを読み取り可能なXMLに変換します。
  • レガシーテキスト.stringsファイルを編集可能なXMLに変換します。
  • ビルド時に変換されたファイルを元のネイティブ形式に再エンコードします。
  • Mach-Oバイナリおよび.car、.nib、.momなどのApple独自形式を保持します。
  • 埋め込まれたエンタイトルメントおよびプロビジョニングプロファイル情報を読み取り可能な参照として抽出します。
  • ipaforge.ymlにファイルごとの分類および変換メタデータを生成します。
  • 外部署名ユーティリティを必要としない、組み込みのアドホック署名。
  • PKCS#12証明書およびプロビジョニングプロファイルを使用したオプションの実証明書署名。
  • 標準ライブラリのみ。サードパーティのPythonパッケージは不要です。
  • 要件

    • Python 3.6以降を推奨します。
    • Python 2.7およびPython 3.2+は、スクリプトの互換性レイヤーによってサポートされています。
    • Payload/<AppName>.appバンドルを含む有効な.ipaアーカイブ。

    インストール

    IPAForgeは単一のPythonファイルとして直接使用できます:

    root@kitploit:~
    python3 ipaforge.py --help
    

    ipaforgeコマンドをPATHにインストールするには:

    root@kitploit:~
    python3 ipaforge.py --install
    

    インストールせずにバンドルされた配布ファイルを抽出するには:

    root@kitploit:~
    python3 ipaforge.py --extract
    

    クイックスタート

    IPAをデコードする

    root@kitploit:~
    ipaforge -d MyApp.ipa
    

    これにより、現在の作業ディレクトリにフレームワークディレクトリが作成されます。通常は./MyApp/です。

    デコードされたファイルを編集する

    生成されたフレームワーク内の読み取り可能なXMLファイルを変更します。元のアーカイブデータと参照はoriginal/に保持され、変換されたファイルはipaforge.ymlで追跡されます。

    新しいIPAをビルドする

    root@kitploit:~
    ipaforge -b MyApp
    

    デフォルトの出力は、現在の作業ディレクトリの./MyApp-signed.ipaです。

    明示的なパスを使用する

    root@kitploit:~
    ipaforge -d MyApp.ipa decoded-framework
    ipaforge -b decoded-framework rebuilt.ipa
    

    コマンドラインリファレンス

    root@kitploit:~
    ipaforge -d, --decode INPUT [OUTPUT]
    ipaforge -b, --build  INPUT [OUTPUT]
    
    オプション説明
    -d, --decodeIPAを編集可能なフレームワークディレクトリにデコードします。
    -b, --buildデコードされたフレームワークディレクトリからIPAをビルドします。
    -f, --force既存の出力ディレクトリまたはファイルを上書きします。
    --no-metaデコード時にipaforge.ymlを書き込みません。
    --keep-binaryデコード時にすべてのファイルをバイナリのまま保持します。XML変換を無効にします。
    -c 0-9, --compression-level 0-9ZIP圧縮レベルを設定します。デフォルト: 9。
    --no-sign意図的に署名なしのアーカイブをビルドします。
    --entitlements FILEビルドされた署名にエンタイトルメントを埋め込みます。
    --p12 FILE実際のPKCS#12開発者証明書で署名します。
    --p12-password PASSPKCS#12証明書のパスワード。
    --provision FILE--p12と共にプロビジョニングプロファイルを埋め込み、使用します。
    -v, --verboseデバッグログを有効にします。
    -q, --quietエラーのみを出力します。
    --versionIPAForgeのバージョンを表示します。
    -h, --helpヘルプを表示します。

    Windowsでは、モードを自動的に推測できます。.ipa入力はデコードされ、フレームワークディレクトリはビルドされます。

    署名

    ビルドモードは、デフォルトで組み込みのアドホック署名者を使用してバンドルに署名します。Mach-Oバイナリ用のCodeDirectoryデータと、アプリケーションバンドル用の新しい_CodeSignature/CodeResourcesファイルを作成します。

    市販のiOSデバイスにインストールするには、実際の開発者証明書と互換性のあるプロビジョニングプロファイルを使用します:

    root@kitploit:~
    ipaforge -b MyApp \
      --p12 developer.p12 \
      --p12-password 'your-password' \
      --provision embedded.mobileprovision
    

    カスタムエンタイトルメントを埋め込むには:

    root@kitploit:~
    ipaforge -b MyApp --entitlements entitlements.plist
    

    意図的に署名なしのアーカイブを作成するには:

    root@kitploit:~
    ipaforge -b MyApp --no-sign
    

    署名なしのアーカイブは、通常、iOSではインストールできません。

    デコード出力構造

    デコードされたフレームワークには通常、以下が含まれます:

    root@kitploit:~
    MyApp/
    ├── Payload/
    │   └── MyApp.app/
    ├── original/       # reference copies of signatures, profiles, and entitlements
    ├── readable/       # human-readable summaries for opaque formats and binaries
    └── ipaforge.yml    # file classifications and conversion metadata
    

    original/ディレクトリとipaforge.ymlは、再構築されたIPAにパッケージ化されることはありません。

    ファイル処理

    IPAForgeは、抽出されたファイルを以下のようなカテゴリに分類します:

    • native-bplist — XMLに変換され、バイナリplistとして再構築されるバイナリプロパティリスト。
    • legacy-strings — XMLに変換され、UTF-16テキストとして再構築されるクラシックな.stringsファイル。
    • xml-plist — テキストとして保持される既存のXML plistファイル。
    • opaque-compiled — バイト単位で保持される独自のコンパイル済みApple形式。
    • native-binary — バイト単位で保持されるMach-O実行可能ファイルおよびライブラリ。
    • other-binary — バイト単位で保持される画像、音声、DERデータ、およびその他のリソース。

    終了コード

    コード意味
    0操作が成功しました。
    1無効なアーカイブや署名の失敗など、ランタイムエラー。
    2コマンドラインの使用エラー。
    141パイプのコンシューマによって標準出力が早期に閉じられました。

    セキュリティに関する注意

    IPAForgeは信頼できないアーカイブの内容を処理します。このツールは、個々のアーカイブメンバーおよび非圧縮アーカイブの合計サイズに防御的な制限を適用しますが、未知のファイルは隔離された環境で検査する必要があります。

    分析および署名する法的権利がない限り、アプリケーションを配布またはインストールしないでください。

    ライセンス

    GitHubに公開する前に、プロジェクトのライセンステキストをここに追加してください。ライセンスが含まれていない場合、GitHubユーザーはコードを使用、変更、または再配布する許可を自動的に得ることはありません。

    コントリビューション

    Issueおよびプルリクエストを歓迎します。以下を含めてください:

    • Pythonのバージョンとオペレーティングシステム。
    • IPAForgeのバージョン。
    • 実行されたコマンド。
    • 機密情報を削除した関連ログ出力。
    • 可能な場合は、最小限の再現アーカイブまたは説明。

    バージョン

    このREADMEはIPAForge 1.24.0について説明しています。

    ツールをダウンロード