Android-Disassembler
[![ci][1]][2]
CodeFactor

Analizza app dannose sul tuo telefono
Stato della manutenzione
La manutenzione è ripresa, ma il progetto è ancora in fase di recupero e modernizzazione.
- La baseline ora presuppone che i sottomoduli git siano inizializzati prima della build.
- I flussi predefiniti di apertura/importazione/esportazione ora utilizzano contratti SAF-first su Android moderno.
Importazione avanzata è un percorso separato per utenti esperti per root, filesystem raw e navigazione delle app installate.
QUERY_ALL_PACKAGES è mantenuto per la fonte di app installate per utenti esperti, non per il flusso SAF predefinito.
- Il triage dei problemi e la documentazione di manutenzione si trovano in
docs/maintenance/.
Modello di archiviazione
Seleziona file utilizza il selettore documenti SAF di Android.
Esporta progetto e Salva dettagli su file utilizzano i flussi di creazione documenti SAF.
Importazione avanzata è opzionale e pensata per utenti esperti che necessitano di filesystem raw, root o punti di ingresso per app installate.
- La navigazione delle app installate è trattata come funzionalità per utenti esperti, quindi la visibilità dei pacchetti rimane isolata dal flusso SAF predefinito.
Build di anteprima
- Ogni esecuzione CI carica un artefatto APK di debug in GitHub Actions.
- Un flusso di lavoro di anteprima separato può pubblicare una prerelease
Preview latest con un APK firmato in debug per chi vuole provare l'ultima build del ramo prima di una release formale.
- Gli asset delle release formali rimangono nel normale flusso delle GitHub Releases.
Android Disassembler è un'applicazione in grado di analizzare diversi tipi di file come file APK, file dex, librerie condivise (file .so) (NDK, JNI), file PE di Windows (EXE, DLL, SYS, ecc.), eseguibili Linux, file oggetto e molto altro. Queste funzionalità dell'app si basano su capstone library, elf parser, PE parser, backsmali e facile reflector.

Novità: corretti diversi bug minori (crash)
Caratteristiche
- Mostra i dettagli dei file ELF.
- Mostra la tabella dei simboli (nomi di funzioni o oggetti, ...) dei file ELF.
- Disassembla le sezioni di codice.
- Ha varie opzioni di esportazione del disassemblato. (File raw ricaricabile, file txt compilabile, file di testo analitici, json e database ricaricabile)
- Supporta progetti.
- Supporta l'avvio diretto dai file browser.
- Supporta molte ABI (arm, x86, x64, MIPS, PowerPC, ...)
- Salta all'indirizzo tramite nomi di simboli o un indirizzo esadecimale.
- Colorazione della sintassi.
- Supporta formati PE e altri formati bin.
- Ordina i simboli se necessario.
- Colora le istruzioni PUSH/POP.
- Colora meglio le istruzioni dell'architettura ARM.
- Aggiunto menu Segui salto per le istruzioni di salto. (Con BackStack)
- Può sovrascrivere la configurazione di analisi automatica
- Puoi copiare un'istruzione negli appunti.
- Ora analizza IAT, EAT degli header PE.
- Ora puoi scegliere le colonne da visualizzare.
- Supporta l'analisi dei file di sistema (non accessibili senza permessi di root) per telefoni rooted.
- Messaggio più amichevole per file non analizzabili.
- Il selettore di archiviazione ora mantiene la sessione, ricordando l'ultima cartella visitata.
- Aggiunta vista esadecimale e calcolatrice utility.
- L'installazione del tema è automatizzata.
- Scegli quale binario analizzare quando lo zip/apk contiene più binari.
- Scegli APK tra quelli installati
- Cerca stringhe nel binario (Purtroppo solo per caratteri ascii)
- Analisi byte per byte (media, hash, entropia, test G, test chi, autocorrelazione) per aiutare a determinare se il file è crittografato
- Supporta assembly .NET
- Supporta file dex
- È consentita l'analisi di più file in un progetto.
Video dimostrativo

Materiali sugli assembly
Gestione degli errori
-
L'app si blocca!
Ci scusiamo per il disagio, invia una segnalazione di errore come issue. Se non puoi aspettare la prossima versione stabile, controlla/concedi i permessi di lettura/scrittura all'app.
-
NotThisFormatException
È un file eseguibile conosciuto? (ELF:.so, .o, .lib, .a, ecc.., PE:.exe, .dll, .sys, ...) Allora segnalamelo con il file che hai tentato di disassemblare. Se non lo è, premi OK e configura manualmente.
Le richieste di funzionalità sono benvenute!
Build & Pull request
- Inizializza i sottomoduli prima:
git submodule update --init --recursive
- Usa Android Studio o Gradle con un SDK/NDK Android configurato.
- Ogni miglioramento è benvenuto!