Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
apk-medit — strumento di ricerca e patch della memoria su APK debuggabile senza root e NDK | Kitploit
Strumenti/GitHubGitHub/sterrasec/apk-medit
Sicurezza AndroidMemory ForensicsPenetration TestingSicurezza MobileAnalisi di Binari
GitHubsterrasec/apk-medit

apk-medit

strumento di ricerca e patch della memoria su APK debuggabile senza root e NDK

Vedi Repository
431652110 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

apk-medit

GitHub release License: MIT typos workflow

Apk-medit è uno strumento di ricerca e modifica della memoria per apk debuggabili senza root e ndk. È stato creato per il security testing dei giochi mobile. Molti giochi mobile hanno il rilevamento del rooting, ma apk-medit non richiede privilegi di root, quindi la modifica della memoria può essere effettuata senza aggirare il rilevamento del rooting.

Motivazione

La modifica della memoria è il modo più semplice per barare nei giochi, è una delle voci da controllare nei security test. Esistono anche cheat tool che possono essere usati con disinvoltura come GameGuardian. Tuttavia, non c'erano strumenti disponibili per dispositivi non-root e CUI. Così l'ho creato come strumento di security testing. La versione destinata alle app iOS è sterrasec/ipa-medit.

Demo

Questa è una demo che utilizza apk-medit per completare un gioco che richiede un milione di tap per essere completato.

Installazione

Scarica il binario da GitHub Releases, ti preghiamo di copiare il binario in /data/local/tmp/ su un dispositivo Android. I binari sono forniti per arm64 (dispositivi fisici) e amd64 (emulatori Android x86_64, ad esempio su PC Windows). Controlla l'ABI del tuo dispositivo con adb shell getprop ro.product.cpu.abi.

$ adb push medit /data/local/tmp/medit
medit: 1 file pushed. 29.0 MB/s (3135769 bytes in 0.103s)

Come compilare

Puoi compilare con il comando make. Richiede un compilatore go. Dopo che la compilazione è completata, se adb è connesso, copia il binario compilato in /data/local/tmp/ su un dispositivo Android.

$ make
GOOS=linux GOARCH=arm64 GOARM=7 go build -o medit
/bin/sh -c "adb push medit /data/local/tmp/medit"
medit: 1 file pushed. 23.7 MB/s (3131205 bytes in 0.126s)

Per compilare per un emulatore Android x86_64, usa invece il target build-x86_64.

$ make build-x86_64 deploy
GOOS=linux GOARCH=amd64 go build -o medit
/bin/sh -c "adb push medit /data/local/tmp/medit"

Utilizzo

Console Windows

Su Windows 10 Cmd e PowerShell il pannello di descrizione dei comandi sempre attivo si sposta verso l'alto e copre il prompt (#37). Quando medit rileva una console di tipo Windows (una build nativa Windows, o TERM vuoto/dumb), stampa l'elenco dei comandi una volta all'avvio e disabilita il pannello live; Tab completa comunque i nomi dei comandi.

  • APK_MEDIT_LIVE_HELP=1 / 0 forza l'attivazione o la disattivazione del pannello live.
  • APK_MEDIT_WINDOWS_CONSOLE=1 / 0 sovrascrive il rilevamento della console.

Usa il comando run-as per leggere i file usati dall'app target, quindi apk-medit può essere usato solo con app che hanno l'attributo debuggable abilitato. Per abilitare l'attributo debuggable, apri AndroidManifest.xml, aggiungi il seguente attributo xml nel nodo xml application:

android:debuggable="true"

Puoi anche usare sterrasec/apkutil per abilitare facilmente l'attributo debuggable senza modificare AndroidManifest.xml, è utile.

$ apkutil debuggable <target-apk-name>.apk

Dopo aver eseguito il comando run-as, la directory viene cambiata automaticamente. Quindi copia medit da /data/local/tmp/. Eseguendo medit si avvia un prompt interattivo.

$ adb shell
$ pm list packages # to check <target-package-name>
$ run-as <target-package-name>
$ cp /data/local/tmp/medit ./medit
$ ./medit

Puoi anche scegliere di non usare ptrace quando scrivi in memoria. Questo evita il rilevamento del debugger tramite ptrace, ma non funziona su Android 10 o versioni successive a causa di SELinux.

$ ./medit -without-ptrace

Comandi

Ecco i comandi disponibili in un prompt interattivo.

find

Cerca l'intero specificato in memoria.

> find 999982
Search UTF-8 String...
Target Value: 999982([57 57 57 57 56 50])
Found: 0!
------------------------
Search Word...
parsing 999982: value out of range
------------------------
Search Double Word...
Target Value: 999982([46 66 15 0])
Found: 1!
Address: 0xe7021f70

Puoi anche specificare il tipo di dato come string, word, dword, qword.

> find dword 999996
Search Double Word...
Target Value: 999996([60 66 15 0])
Found: 1!
Address: 0xe7021f70

filter

Filtra i risultati di ricerca precedenti che corrispondono ai risultati di ricerca attuali.

> filter 993881
Check previous results of searching dword...
Target Value: 993881([89 42 15 0])
Found: 1!
Address: 0xe7021f70

patch

Scrive il valore specificato all'indirizzo trovato dalla ricerca.

> patch 10
...
Successfully patched!

ps

Trova il processo target e, se ce n'è solo uno, lo specifica come target. ps viene eseguito automaticamente all'avvio.

> ps
Package: jp.sterrasec.tap1000000, PID: 4398
Target PID has been set to 4398.

attach

Se il pid target è impostato da ps, si collega al processo target, ferma tutti i processi nell'app tramite ptrace.

> attach
Target PID: 4398
Attached TID: 4398
Attached TID: 4405
Attached TID: 4407
Attached TID: 4408
Attached TID: 4410
Attached TID: 4411
Attached TID: 4412
Attached TID: 4413
Attached TID: 4414
Attached TID: 4415
Attached TID: 4418
Attached TID: 4420
Attached TID: 4424
Attached TID: 4429
Attached TID: 4430
Attached TID: 4436
Attached TID: 4437
Attached TID: 4438
Attached TID: 4439
Attached TID: 4440
Attached TID: 4441
Attached TID: 4442

Se il pid target non è impostato, può essere specificato sulla riga di comando.

> attach <pid>

detach

Si scollega dal processo a cui è collegato.

> detach
Detached TID: 4398
Detached TID: 4405
Detached TID: 4407
Detached TID: 4408
Detached TID: 4410
Detached TID: 4411
Detached TID: 4412
Detached TID: 4413
Detached TID: 4414
Detached TID: 4415
Detached TID: 4418
Detached TID: 4420
Detached TID: 4424
Detached TID: 4429
Detached TID: 4430
Detached TID: 4436
Detached TID: 4437
Detached TID: 4438
Detached TID: 4439
Detached TID: 4440
Detached TID: 4441
Detached TID: 4442

dump

Mostra un dump della memoria come hexdump.

Scarica lo strumento