[IOSリバースエンジニアリング] dumpdecryptedシェル

[IOSリバースエンジニアリング] dumpdecryptedシェル

frida-trace を簡単に試してみたところ、pid の動的ランタイムに対応するさまざまな関数を追跡できることがわかりました。しかし、完全な APP アプリケーションの場合、主要な実行関数を取得するにはどうすればよいでしょうか? ここでは、IPA を逆アセンブルしてコードを見つける必要があります。 . ロジック、そしてフリダダイナミクスと組み合わせて見てみましょう。

Aisi Assistant ダウンロード IPA

ここに画像の説明を挿入します

Apple ConfigurationIPA をダウンロード

これは、APPLE が公式に作成した IPA をキャッシュすることで行われます。Apple Mall をミラーリングする Aisi とは異なり、この方法の方が推奨されます。APPLEid にログインし、iCloud 履歴からアプリのダウンロード記録を見つけ、「追加」をクリックする
ここに画像の説明を挿入します

、まず ipa をキャッシュします。

 ~/Library/Group Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps

ここに画像の説明を挿入します
まずフォルダーから削除してから、「停止」をクリックします。

殻を打ち砕け

ダンプ復号化された

 ✘  ~/repos  git clone https://github.com/stefanesser/dumpdecrypted.git
Cloning into 'dumpdecrypted'...
remote: Enumerating objects: 31, done.
remote: Total 31 (delta 0), reused 0 (delta 0), pack-reused 31
Receiving objects: 100% (31/31), 7.10 KiB | 1.77 MiB/s, done.
Resolving deltas: 100% (15/15), done.
 ~/repos  cd dumpdecrypted
 ~/repos/dumpdecrypted   master  ls
Makefile        README          dumpdecrypted.c
 ~/repos/dumpdecrypted   master  mke
zsh: command not found: mke
 ✘  ~/repos/dumpdecrypted   master  make
`xcrun --sdk iphoneos --find gcc` -Os  -Wimplicit -isysroot `xcrun --sdk iphoneos --show-sdk-path` -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/Frameworks -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/PrivateFrameworks -arch armv7 -arch armv7s -arch arm64 -c -o dumpdecrypted.o dumpdecrypted.c
`xcrun --sdk iphoneos --find gcc` -Os  -Wimplicit -isysroot `xcrun --sdk iphoneos --show-sdk-path` -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/Frameworks -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/PrivateFrameworks -arch armv7 -arch armv7s -arch arm64 -dynamiclib -o dumpdecrypted.dylib dumpdecrypted.o
 ~/repos/dumpdecrypted   master  ls
Makefile            README              dumpdecrypted.c     dumpdecrypted.dylib dumpdecrypted.o
 ~/repos/dumpdecrypted   master 

上記を完了すると、コンパイルされた製品 dumpdecrypted.dylib を取得したので、それを携帯電話に挿入します。

開いたsh

まず、Cydia で openssh をダウンロードする必要があります

ここに画像の説明を挿入します
次に、携帯電話の IP アドレスを見つけます (Wi-Fi を調べます)。

コンピューター接続 SSH

ssh [email protected]

ここに画像の説明を挿入します

ここでの openssh のデフォルトの root パスワードは ですalpine。変更することをお勧めします。変更は次のとおりです。

iPhone:~ root# passwd
Changing password for root.
New password:
Retype new password:
iPhone:~ root#

scp を渡し、
ここに画像の説明を挿入します
アプリ アプリケーションの場所を検索し、
ここに画像の説明を挿入します
動的ライブラリに署名するだけです。

ldid -S dumpdecrypted.dylib

殻を破り、wechat を例に挙げてみましょう。

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/58F8F561-7406-479B-B90E-64C266218A4B/WKMainProject.app/WKMainProject

表示された場合は
ここに画像の説明を挿入します
、シェル処理が失敗したことを意味します。
それ以外の場合は、解凍された mach-0 ファイルが現在のフォルダーに生成されます: Generate: app name.decrypted
ファイルが暗号化されているかどうかは、次のコマンドで確認できます。

otool -l WeChat|grep cry

おすすめ

転載: blog.csdn.net/xiru9972/article/details/129096115