Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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
AndroTickler — Kit di penetration testing e auditing per app Android. | Kitploit
Strumenti/GitHubGitHub/ernw/androtickler
Sicurezza AndroidAnalisi StaticaAnalisi Dinamica (Sandboxing)Analisi delle VulnerabilitàPentesting di App MobiliRaccolta InformazioniPenetration Testing
GitHubernw/androtickler

AndroTickler

Kit di penetration testing e auditing per app Android.

Vedi Repository
25448471 anno 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

AndroTickler

Uno strumento Java che aiuta a eseguire pentest sulle app Android in modo più veloce, semplice ed efficiente. AndroTickler offre molte funzionalità di raccolta informazioni, controlli statici e dinamici che coprono gran parte degli aspetti del pentesting di app Android. Offre inoltre diverse funzionalità di cui i pentester hanno bisogno durante i loro test. AndroTickler si integra anche con Frida per fornire tracciamento e manipolazione dei metodi. In precedenza era pubblicato con il nome di Tickler.

AndroTickler richiede un host Linux e un dispositivo Android con root collegato alla sua porta USB. Lo strumento non installa nulla sul dispositivo Android, crea solo una directory Tickler su /sdcard. AndroTickler dipende da Android SDK per eseguire comandi sul dispositivo e copiare i dati dell'app nella directory TicklerWorkspace sull'host per ulteriori analisi. TicklerWorkspace è la directory di lavoro di AndroTickler e ogni app ha una sottodirectory separata in TicklerWorkspace che può contenere quanto segue (a seconda delle azioni dell'utente):

  • Directory DataDir: una copia della directory dati dell'app
  • directory extracted: output di apktool sull'app, contiene codice smali, risorse, librerie, ecc.
  • directory bgSnapshots: contiene istantanee di sfondo copiate dal dispositivo
  • directory images: contiene eventuali screenshot acquisiti per l'app
  • directory JavaCode: contiene il codice Java dell'app decompilato da dex2jar e JD tools
  • directory logs: contiene file di log prodotti da -t -log, come spiegato di seguito
  • transfers: file e directory copiati dal dispositivo all'host usando -copy2host
  • AndroidManifest.xml: il file manifest dell'app secondo apktool
  • base.apk: il file APK dell'app, installato sul dispositivo
  • debuggable.apk: una versione debuggable dell'app, prodotta da -dbg

La directory libs e il file di configurazione Tickler.conf si trovano nella stessa directory del file jar. Il file di configurazione imposta la posizione della directory TicklerDir sull'host e Tickler su /sdcard del dispositivo Android. Se il file di configurazione non esiste o queste 2 directory non sono impostate, verranno utilizzati i valori predefiniti (Tickler_workspace nella directory corrente e /sdcard/Tickler rispettivamente). La directory Tickler_lib contiene alcune librerie Java e strumenti esterni utilizzati da AndroTickler, come apktool e dex2jar.

AndroTickler dipende fortemente dai seguenti strumenti, quindi devono essere presenti sulla tua macchina prima di usarlo:

  • Java 7 o superiore
  • Strumenti Android SDK (adb e affini)
  • sqlite3

Altri strumenti sono richiesti per alcune funzionalità, ma AndroTickler può comunque funzionare senza di essi:

  • Frida
  • jarsigner

Come compilarlo

  1. Compilare lo strumento dal codice

    gradle build

  2. Spostare AndroTickler.jar nella stessa directory della directory Tickler_lib e del file Tickler.conf (creato automaticamente in build/libs)

  3. Impostare dex2jar come eseguibile (libs/notJars//dex2jar-2.1/d2j-dex2jar.sh e libs/notJars//dex2jar-2.1/d2j_invoke.sh)

  4. Collegare il dispositivo Android con l'applicazione da testare installata

Nota: Se la compilazione del codice sorgente fallisce, puoi scaricare l'ultima release compilata dalla scheda releases

La versione corrente fa quanto segue:

Guida ai comandi

root@kitploit:~
java -jar AndroTickler.jar -h

Raccolta informazioni/Analisi statica:

Elenca le app installate sul dispositivo:

root@kitploit:~
java -jar AndroTickler.jar -pkgs

Cerca un'app (pacchetto) installata sul dispositivo il cui nome del pacchetto contiene la chiave di ricerca

root@kitploit:~
java -jar AndroTickler.jar -findPkg <searchKey>

pacchetto senza attributi extra

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> [altre opzioni]

Qualsiasi comando con l'opzione -pkg (usata o meno con una delle seguenti opzioni) esegue le seguenti azioni se non sono già state eseguite:

  • Copia l'app dal dispositivo
  • Estrae il file Manifest dell'app
  • Decompila l'app in codice Java usando dex2jar e JD tools

Informazioni generali

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -info

Restituisce le seguenti informazioni:

  • ID utente dell'app
  • Percorso delle directory dell'app
  • Se il codice dell'app indica l'uso di memoria esterna
  • Directory dell'app già esistenti nella memoria esterna
  • URI di contenuto nel codice
  • Se l'app supporta il backup
  • Se l'app è debuggable
  • Schemi di dati (come IPC iOS)
  • I permessi che utilizza

Code Squeezing

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -squeeze [short | <codeLocation> ]

Recupera quanto segue dal codice Java decompilato dell'app:

  • Messaggi di log
  • Qualsiasi indicazione di possibili credenziali utente
  • Commenti Java
  • Librerie utilizzate
  • URL nel codice
  • Uso di preferenze condivise
  • Uso di memoria esterna
  • Componenti comuni come OkHttp e WebView

Come prevedibile, il suo output è solitamente enorme, quindi si consiglia di reindirizzare l'output del comando in un file.

short Squeeza solo il codice decompilato che appartiene allo sviluppatore. Ad esempio, se un'app ha un nome pacchetto com.notEnaf.myapp, allora squeeze short squeeze solo il codice nella directory com/notEnaf.

Squeeza il codice solo nella directory codeLocation. Utile per limitare la ricerca o per squeezeare il codice sorgente se disponibile.

Elenco dei componenti

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -l [-exp] [-v]

Elenca tutti i componenti dell'app

-exp Mostra solo i componenti esportati

-v Fornisce informazioni più dettagliate per ogni componente:

  • Tipo di componente
  • Se esportato o meno
  • I suoi intent filter
  • Lo strumento controlla la corrispondente classe Java per ogni componente e restituisce tutti i possibili intent extras

Elenco di qualsiasi tipo di componente

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -l [-act | -ser | -rec | -prov ] [-exp] [-v]
  • -act : activity
  • -ser : service
  • -rec: broadcast receiver
  • -prov: content provider
  • -exp: mostra solo i componenti esportati di uno qualsiasi dei tipi sopra

Database

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -db [|e|l|d] [nu]

Per impostazione predefinita, tutti i comandi -db aggiornano la directory di archiviazione dati dell'app sull'host prima di eseguire il controllo.

nessun attributo O e Verifica se i database dell'app sono crittografati. È l'azione predefinita se non viene fornita alcuna opzione dopo il flag -db. l Elenca tutti i database dell'app. I database crittografati potrebbero non essere rilevati. d Esegue un dump sqlite di uno qualsiasi dei database non crittografati. nu noUpdate: esegue una qualsiasi delle opzioni sopra senza aggiornare la directory dati dell'app sull'host.

Confronto della directory di archiviazione dei dati

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -diff [d|detailed]

Copia la directory di archiviazione dati dell'app (in DataDirOld) quindi chiede all'utente di eseguire l'azione desiderata e di premere Invio quando ha finito. Quindi copia di nuovo la directory di archiviazione dati (in DataDir) ed esegue un diff tra di esse per mostrare quali file sono stati aggiunti, eliminati o modificati.

d|detailed Fa la stessa cosa del normale comando -diff, inoltre mostra esattamente cosa è cambiato nei file di testo e nei database non crittografati.

Ricerca

Codice

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -sc <chiave> [<posizionePersonalizzata>]

Cerca la chiave nelle seguenti posizioni:

  • Il codice Java decompilato dell'app
  • res/values/strings.xml
  • res/values/arrays.xml

La ricerca non distingue tra maiuscole e minuscole.

Sostituisce la posizione del codice Java decompilato con la posizione personalizzata.

Archiviazione

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -sd <chiave>

Cerca la chiave nella directory di archiviazione dati dell'app

Tickling

Attiva i componenti dell'app, con tutte le possibili combinazioni di intent. Ad esempio, se un activity ha un intent-filter con 2 possibili azioni e 3 schemi URI di dati, AndroTickler attiverà questa activity con tutte le possibili combinazioni di questo intent. Inoltre, AndroTickler cattura gli intent extras menzionati nella classe Java corrispondente al componente, assegna loro valori fittizi e li aggiunge alle possibili combinazioni di intent. Sono supportati solo extras di tipo boolean, stringa, int e float.

Se viene utilizzata l'opzione -exp, i componenti verranno attivati senza privilegi di root o permessi speciali. In caso contrario, i componenti verranno attivati con privilegi di root. Questo aiuta a testare l'app in 2 scenari diversi: contro attaccanti con privilegi normali o con privilegi elevati.

Prima di attivare i componenti, AndroTickler stampa tutti i comandi da eseguire. Quindi per ogni comando, attiva il componente, stampa il comando e attende l'utente. Questo dà all'utente abbastanza tempo per eseguire eventuali controlli aggiuntivi dopo l'esecuzione del comando. Prima che l'utente passi al comando successivo, gli viene data la possibilità di acquisire uno screenshot del dispositivo per la documentazione del PoC.

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -t [-all | -exp] [target] [-log]

target come spiegato con il comando list, può essere:

  • -act : activity. avvia l'activity/le activity con tutte le combinazioni di intent come spiegato sopra
  • -ser : service. avvia il/i service con tutte le combinazioni di intent come spiegato sopra
  • -rec: broadcast receiver: invia tutti i possibili messaggi broadcast che corrisponderebbero al broadcast receiver
  • -prov: content provider: interroga il content provider

se nessun valore, allora il target è tutto quanto sopra

[-comp] <nome_componente> Specifica un solo componente. Puoi anche usare <nome_componente> direttamente senza il flag -comp. -exp AndroTickler utilizza privilegi normali per attivare solo i target esportati. -all Opzione predefinita. AndroTickler utilizza privilegi di root per attivare i target esportati -log Cattura tutti i messaggi logcat generati durante la sessione di attivazione. Il file di log viene salvato nella sottodirectory logs.

Frida:

Frida deve essere installato sul tuo host. Inoltre, la posizione del server Frida sul dispositivo Android deve essere aggiunta al file Tickler.conf nella voce Frida_server_path

Catturare argomenti e valore di ritorno

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -frida vals <NomeClasse> <NomeMetodo> <NumeroArgomenti> [-reuse]

Mostra gli argomenti e il valore di ritorno di questo metodo (solo tipi di dati primitivi e String)

reuse In caso di opzioni vals e set, Frida crea/aggiorna uno script Frida di quella funzionalità. Puoi modificare lo script creato come desideri, quindi se vuoi eseguirlo tramite AndroTickler, usa l'opzione -reuse in modo che non venga sovrascritto.

Modificare argomenti o valore di ritorno

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -frida set <NomeClasse> <NomeMetodo> <NumeroArgomenti> <NumeroArgomentoDaModificare> <nuovoValore>[-reuse]

Imposta l'argomento numero NumeroArgomentoDaModificare su nuovoValore (solo tipi di dati primitivi e String). NumeroArgomentoDaModificare parte da 0: Primo argomento --> NumeroArgomentoDaModificare = 0, ...ecc Per modificare il valore di ritorno --> impostare NumeroArgomentoDaModificare su ret

Eseguire script JS Frida

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -frida script <percorsoScript>

Esegue uno script Frida JS situato in percorsoScript sul tuo host

Enumera le classi caricate:

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -frida enum

Altre funzionalità

Versione debuggable

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -dbg

Crea una versione debuggable dell'app, che può essere installata sul dispositivo e sottoposta a debug utilizzando qualsiasi strumento esterno. AndroTickler include un keystore per firmare l'apk debuggable, ma richiede lo strumento jarsigner sull'host.

Versione personalizzata

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -apk <directoryDecompilata>

Crea un file apk da una directory, lo firma e lo installa.

Istantanee di sfondo

root@kitploit:~
java -jar AndroTickler.jar [-pkg <pacchetto>] [-bg|--bgSnapshots]

Copia le istantanee di sfondo catturate dal dispositivo (funziona con e senza l'opzione -pkg) nella sottodirectory bgSnapshots.

Copiare file / directory

Copia la directory di archiviazione dati:

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -dataDir  [dest]

Copia la directory di archiviazione dati in DataDir dest Nome opzionale della directory di destinazione, che verrà comunque posizionata nella sottodirectory transfers.

Copia qualsiasi file / directory:

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -cp2host <percorso_sorgente> [dest]

Copia file / directory dal dispositivo Android.

  • percorso_sorgente è la posizione assoluta di ciò che si desidera copiare dal dispositivo Android
  • dest: nome opzionale della directory di destinazione, che verrà comunque posizionata nella sottodirectory transfers.

Se l'opzione dest non viene fornita, il nome della directory sarà il timestamp della transazione.

Screenshot

root@kitploit:~
java -jar AndroTickler.jar [-pkg <pacchetto>] -screen
  • Cattura lo screenshot corrente del dispositivo e lo salva nella sottodirectory images
  • Funziona con o senza il flag del pacchetto

Nota

Per le opzioni che non richiedono l'opzione -pkg, i loro dati verranno salvati in Tickler_Dir/NoPackage

Esempi:

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -t  -act -exp

Attiva le activity esportate

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -t -prov -log

Interroga tutti i content provider e salva i messaggi logcat fino all'arresto dello strumento

root@kitploit:~
java -jar AndroTickler.jar -pkg <pacchetto> -t <nome_componente> 

Attiva il componente, il tipo di attivazione dipende dal tipo di componente

root@kitploit:~
java -jar AndroTickler.jar -pkg de.not3naf.myApp -frida set de.not3naf.myApp.myActivity myMethod 2 0 "newValue" 

Si aggancia al metodo "myMethod" che ha 2 argomenti e cambia il valore del primo argomento (args[0]) in "newValue"

root@kitploit:~
java -jar AndroTickler.jar -pkg de.not3naf.myApp -frida set de.not3naf.myApp.myActivity myMethod 2 2 false 

Si aggancia al metodo "myMethod" che ha 2 argomenti e cambia il valore di ritorno in boolean false

Scarica lo strumento