3.アプリケーションの復号化/スマッシングシェル
アプリケーションがAppStoreにアップロードされた後、Appleはアプリケーションを暗号化し、アプリケーションの実行時に動的に復号化します。このように、AppStoreからダウンロードしたアプリケーションを直接分析することはできません。したがって、アプリケーションを分析する前に、まずアプリケーションを復号化する必要があります。これは一般に、シェルのスマッシングとして知られています。その後、アプリケーションと復号化された実行可能ファイルをコンピューターにエクスポートできます
1.ダンプ復号化
失敗しました
2.クラッチ
2.1ダウンロードしてコンパイルする
プロジェクトgithub.com/KJCracks/Cl...をリポジトリからローカルにプルします
xcodeでプロジェクトを開きます。デバッグを使用してすべてのアーキテクチャをコンパイルし(アクティブなアーキテクチャのみをビルド-いいえ)、ターゲットを実行して実マシンを選択し、[コンパイル]をクリックします。
コンパイル後、モバイルデバイスで実行できるコマンドラインツールが生成され、内部スクリプトが実行可能ファイルをコピーして個別に署名し、build
フォルダーに配置します。
次に、を使用scp
してファイルをモバイルデバイスClutch
のディレクトリにコピーします。/usr/bin
scp /Users/zsq/Downloads/Clutch-master/build/Clutch [email protected]:/usr/bin/
复制代码
次に、モバイルデバイスにリモートでリンクし、Clutch
実行可能権限を付与します。
chmod +x /usr/bin/Clutch
复制代码
2.2使用
コマンドリファレンス
Clutch [OPTIONS]
-b --binary-dump Only dump binary files from specified bundleID
-d --dump Dump specified bundleID into .ipa file
-i --print-installed Print installed application
--clean Clean /var/tmp/clutch directory
--version Display version and exit
-? --help Display this help and exit
复制代码
インストールされているアプリとBundleIdを表示する
Clutch -i
复制代码
ターゲットアプリケーションを復号化します
Clutch -b target.bundle.id
复制代码
2022-03-11 11:45:00.325 Clutch[3690:399947] command: Only dump binary files from specified bundleID
Zipping xxx.app
Dumping <xxx> (arm64)
Patched cryptid (64bit segment)
Writing new checksum
2022-03-11 11:45:00.660 clutch[3692:399967] command: Only dump binary files from specified bundleID
2022-03-11 11:45:00.661 clutch[3693:399969] command: Only dump binary files from specified bundleID
2022-03-11 11:45:00.661 clutch[3695:399973] command: Only dump binary files from specified bundleID
2022-03-11 11:45:00.662 clutch[3696:399975] command: Only dump binary files from specified bundleID
2022-03-11 11:45:00.664 clutch[3698:399979] command: Only dump binary files from specified bundleID
2022-03-11 11:45:00.665 clutch[3694:399971] command: Only dump binary files from specified bundleID
2022-03-11 11:45:00.668 clutch[3697:399977] command: Only dump binary files from specified bundleID
Dumping <SwiftSocket> arm64
Successfully dumped framework SwiftSocket!
Dumping <Antlr4> arm64
2022-03-11 11:45:00.699 clutch[3699:399981] command: Only dump binary files from specified bundleID
Dumping <PDFReader> arm64
Dumping <SecurityDetector> arm64
Successfully dumped framework PDFReader!
Successfully dumped framework SecurityDetector!
Dumping <Charts> arm64
Dumping <DTIActivityIndicator> arm64
Successfully dumped framework DTIActivityIndicator!
Successfully dumped framework Antlr4!
Dumping <FilesProvider> arm64
Dumping <UXMPDFKit> arm64
Successfully dumped framework Charts!
Successfully dumped framework UXMPDFKit!
Successfully dumped framework FilesProvider!
Zipping FilesProvider.framework
Zipping SwiftSocket.framework
Zipping UXMPDFKit.framework
Zipping Charts.framework
Zipping SecurityDetector.framework
Zipping PDFReader.framework
Zipping DTIActivityIndicator.framework
Zipping Antlr4.framework
DONE: /private/var/mobile/Documents/Dumped/xxx.ipa
Finished dumping com.neo.elf in 1.8 seconds
复制代码
復号化が成功すると、復号化されたipaファイルのパスが出力されます。後で分析するためにMacにエクスポートできます。
3.frida-ios-dump
frida-ios-dump
国内の大神が書いた貝殻破砕道具であり、使用をお勧めします。アドレス:github.com/AloneMonkey…
3.1fridaをインストールする
frida-ios-dump
使用には助けが必要frida
です。fridaの公式ウェブサイトの frida
サポートが必要ですpython3
。システムはデフォルトpython2.7
でインストールされますが、そのままにしておきます。homebrew
以下にインストールしますpython3
。
python3をインストールします
brew
探すpython
brew search python
复制代码
次に、インストールされているバージョンを選択します
brew install [email protected]
复制代码
python3
python3.x
使用しているバージョンを示しpython
、システムのデフォルトpython2.7
バージョンが使用されていることを示します。これには注意が必要です
pip3をインストールします
frida
インストールする最も便利な方法は、の助けを借りることですpip
。pip
これはPythonパッケージ管理ツールであり、パッケージPython
の検索、ダウンロード、インストール、およびアンインストールの機能を提供します。次のコマンドを使用して、インストールされているかどうかを確認できます。
pip --version # Python2.x 版本命令
pip3 --version # Python3.x 版本命令
复制代码
まだインストールされていない場合は、次のコマンドでインストールできます。
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本
$ sudo python3 get-pip.py # 运行安装脚本
复制代码
注:ここで
python3
はインストールに使用され、後で使用されますpip3
fridaをインストールします
次の正式なインストールfrida
sudo pip3 install frida
sudo pip3 install frida-tools
复制代码
fridaをモバイルにインストールする
Cydia
にソースを追加しhttps://build.frida.re/
ます。次に、検索しfrida
てインストールします。
SSH
お使いの携帯電話を接続します
Macのターミナルで実行します。
frida-ps -U
复制代码
携帯電話システムによって現在実行されているプロセスが一覧表示されます。この時点でfrida
、インストール作業は完了です。frida-ios-dump
以下にインストールを入力します。
3.2frida-ios-dumpのインストール
frida-ios-dump
ローカルにダウンロードしてから、次のコマンドを入力して実行し、必要な依存関係パッケージをインストールします。
sudo pip install -r requirements.txt --upgrade
复制代码
埋め込む
3.3frida-ios-dumpがシェルを壊す
上記のコマンドを実行した後、リストされているアプリケーションを選択frida-ps -U
し、シェルを粉砕します。frida-ios-dump
次のフォルダで実行します。
python3 ./dump.py 应用名或bundleid
复制代码
シェルをスマッシュした後、アプリケーションはフォルダーに直接コピーされfrida-ios-dump
ます。とても便利