Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
ipa-medit — Tool zur Speichermodifikation für neu signierte IPA unterstützt iOS-Apps, die auf iPhone und Apple Silicon Mac laufen, ohne Jailbreak. | Kitploit
Tools/GitHubGitHub/sterrasec/ipa-medit
iOS-SicherheitSpeicherforensikMobile App-PenetrationstestsPenetrationstestsMobile SicherheitBinäranalyse
GitHubsterrasec/ipa-medit

ipa-medit

Tool zur Speichermodifikation für neu signierte IPA unterstützt iOS-Apps, die auf iPhone und Apple Silicon Mac laufen, ohne Jailbreak.

Repository anzeigen
207244vor 1 JahrVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

ipa-medit

GitHub release License: MIT

Ipa-medit ist ein Tool zur Speichersuche und -änderung für resignierte .ipa-Dateien ohne Jailbreak. Es unterstützt iOS-Apps, die auf dem iPhone und Apple Silicon Mac laufen. Es wurde für Sicherheitstests von Handyspielen entwickelt. Viele Handyspiele haben eine Jailbreak-Erkennung, aber ipa-medit benötigt keinen Jailbreak, sodass Speichermodifikationen ohne Umgehung der Jailbreak-Erkennung durchgeführt werden können.

Motivation

Speichermanipulation ist der einfachste Weg, um in Spielen zu cheaten, und gehört zu den Punkten, die im Sicherheitstest überprüft werden. Es gibt auch Cheat-Tools, die beiläufig verwendet werden können, wie GameGem und iGameGuardian. Es gab jedoch keine Tools für nicht gejailbreakte Geräte und CUI sowie Apple Silicon Mac. Also habe ich es als Sicherheitstest-Tool erstellt. Die Android-Version ist sterrasec/apk-medit.

Demo

Anforderungen

  • macOS
    • Sie müssen ein gültiges iOS-Entwicklungszertifikat installiert haben.
    • Nur wenn iOS-Apps auf einem iPhone ausgeführt werden.
    • Xcode
    • libimobiledevice/libimobiledevice
    • libimobiledevice/ideviceinstaller
root@kitploit:~
$ brew install --HEAD libplist
$ brew install --HEAD usbmuxd
$ brew install --HEAD libimobiledevice
$ brew install --HEAD ideviceinstaller

Installation

Binary(Intell Mac Only)

Laden Sie die Binärdatei von GitHub Releases herunter und legen Sie sie in Ihrem $PATH ab.

Manuelles Erstellen

Sie können es mit dem make-Befehl erstellen. Zum Bauen ist der Go-Compiler erforderlich. Wenn Sie eine iOS-App ansprechen, die auf einem Apple Silicon Mac läuft, müssen Sie sie signieren, aber script/codesign.sh wird automatisch ausgeführt und signiert.

root@kitploit:~
$ git clone [email protected]:sterrasec/ipa-medit.git
$ cd ipa-medit
$ make build

Verwendung

Die Ziel-.ipa-Datei muss mit einem auf Ihrem Computer installierten Zertifikat signiert sein. Wenn Sie den Speicher von Drittanbieter-Apps ändern möchten, verwenden Sie bitte ein Tool wie ipautil zum erneuten Signieren.

root@kitploit:~
$ ipautil decode tap1000000.ipa # unzip
$ ipautil build Payload         # re-sign and generate .ipa file

Ziel: iOS-App auf dem iPhone

Zum Starten müssen Sie den Pfad der ausführbaren Datei in der .ipa-Datei mit -bin und die Bundle-ID mit -id angeben.

root@kitploit:~
$ unzip tap1000000.ipa
$ ipa-medit -bin="./Payload/tap1000000.app/tap1000000" -id="jp.hoge.tap1000000"

Ziel: iOS-App auf Apple Silicon Mac

Zum Starten müssen Sie den Prozessnamen mit -name oder die PID mit -pid angeben. Der Prozessname und die PID der iOS-App können im Aktivitätsmonitor überprüft werden.

root@kitploit:~
$ ipa-medit -name <process name>

Befehle

Hier sind die in einer interaktiven Eingabeaufforderung verfügbaren Befehle.

find

Durchsucht den Speicher nach der angegebenen ganzen Zahl.

root@kitploit:~
> find 999986
Success to halt process
Scanning: 0x00000001025e4000-0x00000001025e8000
Scanning: 0x00000001025f4000-0x00000001025fc000
Scanning: 0x0000000102604000-0x0000000102608000
....
Scanning: 0x000000016eb34000-0x000000016ebbc000
Scanning: 0x000000016ebc0000-0x000000016ebe8000
Scanning: 0x000000016ebec000-0x000000016ec74000
Scanning: 0x000000016ec78000-0x000000016ed00000
Found: 1!!
Address: 0x10a2feea0

Standardmäßig werden nur Ganzzahlen durchsucht, wenn iOS-Apps auf dem iPhone ausgeführt werden, da die LLDB-API langsam ist. Wenn eine iOS-App auf einem Apple Silicon Mac ausgeführt wird, werden auch Zeichenfolgen durchsucht.

Sie können auch den Datentyp angeben, z. B. string, word, dword, qword.

root@kitploit:~
> find dword 999994
Search Double Word...
Target Value: 999994([58 66 15 0])
Found: 1!!
Address: 0x11378aea0

filter

Filtert vorherige Suchergebnisse, die mit den aktuellen Suchergebnissen übereinstimmen.

root@kitploit:~
> filter 999842
Success to halt process
Found: 1!!
Address: 0x1087beea0

patch

Schreibt den angegebenen Wert an die durch die Suche gefundene Adresse.

root@kitploit:~
> patch 10
Successfully patched!

attach

An den Zielprozess anhängen.

root@kitploit:~
> attach
Success to halt process

detach

Vom angehängten Prozess trennen.

root@kitploit:~
> detach
Success to continue process

ps

Informationen über den Zielprozess abrufen. Dies funktioniert nur, wenn Sie eine iOS-App ansprechen, die auf einem iPhone läuft.

root@kitploit:~
> ps
SBProcess: pid = 926, state = running, threads = 37, executable = tap1000000
State: Running
thread #1: tid = 0x545ee, 0x00000001bd6552d0 libsystem_kernel.dylib`mach_msg_trap + 8, queue = 'com.apple.main-thread'
thread #3: tid = 0x54619, 0x00000001bd67a184 libsystem_kernel.dylib`__workq_kernreturn + 8
thread #4: tid = 0x5461a, 0x00000001bd67a184 libsystem_kernel.dylib`__workq_kernreturn + 8
thread #5: tid = 0x5461b, 0x00000001bd67a184 libsystem_kernel.dylib`__workq_kernreturn + 8
thread #6: tid = 0x5461c, 0x00000001bd67a184 libsystem_kernel.dylib`__workq_kernreturn + 8
thread #7: tid = 0x5461d, 0x00000001bd6552d0 libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.apple.uikit.eventfetch-thread'
thread #8: tid = 0x5461e, 0x00000001bd6791ac libsystem_kernel.dylib`__psynch_cvwait + 8, name = 'GC Finalizer'
thread #9: tid = 0x5461f, 0x00000001bd65530c libsystem_kernel.dylib`semaphore_wait_trap + 8, name = 'Job.Worker 0'
thread #10: tid = 0x54620, 0x00000001bd65530c libsystem_kernel.dylib`semaphore_wait_trap + 8, name = 'Job.Worker 1'
thread #11: tid = 0x54621, 0x00000001bd65530c libsystem_kernel.dylib`semaphore_wait_trap + 8, name = 'Job.Worker 2'
...
thread #35: tid = 0x54659, 0x00000001bd6552d0 libsystem_kernel.dylib`mach_msg_trap + 8, name = 'AURemoteIO::IOThread'
thread #36: tid = 0x54662, 0x00000001bd679814 libsystem_kernel.dylib`__semwait_signal + 8
thread #37: tid = 0x54663, 0x00000001bd6552d0 libsystem_kernel.dylib`mach_msg_trap + 8, name = 'com.apple.CoreMotion.MotionThread'
thread #38: tid = 0x54664, 0x00000001bd65530c libsystem_kernel.dylib`semaphore_wait_trap + 8, name = 'Loading.PreloadManager'

exit

Um medit zu beenden, verwenden Sie den Befehl exit oder Ctrl-D.

root@kitploit:~
> exit
Bye!

Fehlerbehebung

Fehler beim Empfangen einer Antwort auf das Handshake-Paket

Wenn Sie den Fehler /private/var/containers/Bundle/Application/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/hoge.app: error: failed to get reply to handshake packet erhalten und nicht richtig mit dem iOS-Gerät und lldb kommunizieren können, starten Sie Xcode und erstellen Sie eine App, dann sollte es funktionieren.

Keine Verbindung zu lockdownd möglich

Wenn Sie den Fehler Could not connect to lockdownd. erhalten und nicht richtig mit dem iOS-Gerät und ideviceinstaller kommunizieren können, starten Sie Xcode und erstellen Sie eine App, dann sollte es funktionieren. Wenn dies das Problem nicht löst, aktualisieren Sie bitte ideviceinstaller und libimobiledevice auf die neuesten Versionen, indem Sie die Beispielbefehle im Abschnitt Anforderungen verwenden.

com.apple.debugserver konnte nicht gestartet werden

Dies kann behoben werden, indem der neueste unversionierte Code von libimobiledevice und ideviceinstaller installiert wird, indem die Option --HEAD beim Ausführen von brew install hinzugefügt wird.

  • Referenz: Could not start com.apple.debugserver! ios 14.1 xcode 12.2 MacOS 10.15.4 iphone12 · Issue #1104 · libimobiledevice/libimobiledevice

Lizenz

MIT-Lizenz

Tool herunterladen