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
blutter — Strumento di Reverse Engineering per Applicazioni Mobili Flutter | Kitploit
Strumenti/GitHubGitHub/worawit/blutter
Sicurezza AndroidReverse EngineeringSicurezza MobileAnalisi di Binari
GitHubworawit/blutter

blutter

Strumento di Reverse Engineering per Applicazioni Mobili Flutter

Vedi Repository
2.6k3593 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

B(l)utter

Strumento di Reverse Engineering per Applicazioni Flutter Mobile tramite Compilazione del Runtime Dart AOT

Attualmente l'applicazione supporta solo il file Android libapp.so (solo arm64). Inoltre, l'applicazione funziona al momento solo con versioni recenti di Dart.

Per le funzionalità mancanti ad alta priorità, vedi TODO

Configurazione dell'ambiente

Questa applicazione utilizza la libreria di formattazione C++20. Richiede un compilatore C++ molto recente come g++>=13, Clang>=16.

Raccomando l'uso di un sistema operativo Linux (testato solo su Debian sid/trixie) perché è facile da configurare.

Debian Unstable (gcc 13)

NOTA: Usa SOLO versioni di Debian/Ubuntu che forniscono gcc>=13 dal proprio repository principale. L'uso di gcc portato su versioni vecchie di Debian/Ubuntu non funziona.

  • Installa gli strumenti di build e le dipendenze
root@kitploit:~
apt install python3-pyelftools python3-requests git cmake ninja-build \
    build-essential pkg-config libicu-dev libcapstone-dev

Windows

  • Installa git e python 3
  • Installa l'ultima versione di Visual Studio con "Sviluppo Desktop in C++" e "Strumenti CMake per C++"
  • Installa le librerie richieste (libcapstone e libicu4c)
root@kitploit:~
python scripts\init_env_win.py
  • Avvia il "Prompt dei comandi per strumenti nativi x64"

macOS Sequoia

  • Installa XCode
  • Installa gli strumenti richiesti
root@kitploit:~
brew install cmake ninja pkg-config icu4c capstone
pip3 install pyelftools requests

macOS Ventura e Sonoma (clang 16)

  • Installa XCode
  • Installa clang 16 e gli strumenti richiesti
root@kitploit:~
brew install llvm@16 cmake ninja pkg-config icu4c capstone
pip3 install pyelftools requests

Utilizzo

Estrai la directory "lib" dal file apk

root@kitploit:~
python3 blutter.py percorso/della/app/lib/arm64-v8a directory_output

blutter.py rileverà automaticamente la versione di Dart dal motore Flutter e chiamerà l'eseguibile di blutter per ottenere le informazioni da libapp.so.

Se l'eseguibile blutter per la versione Dart richiesta non esiste, lo script farà automaticamente il checkout del codice sorgente di Dart e lo compilerà.

Aggiornamento

Puoi usare git pull per aggiornare ed eseguire blutter.py con l'opzione --rebuild per forzare la ricostruzione dell'eseguibile

root@kitploit:~
python3 blutter.py percorso/della/app/lib/arm64-v8a directory_output --rebuild

File di output

  • asm/* assembly di libapp con simboli
  • blutter_frida.js il template dello script Frida per l'applicazione target
  • objs.txt dump completo (annidato) degli oggetti dall'Object Pool
  • pp.txt tutti gli oggetti Dart nell'Object Pool

Directory

  • bin contiene gli eseguibili blutter per ogni versione di Dart nel formato "blutter_dartvm<ver>_<os>_<arch>"
  • blutter contiene il codice sorgente. Necessita di compilazione contro la libreria Dart VM
  • build contiene i progetti di build che possono essere eliminati dopo il completamento del processo di build
  • dartsdk contiene il checkout del Dart Runtime che può essere eliminato dopo il completamento del processo di build
  • external contiene librerie di terze parti solo per Windows
  • packages contiene le librerie statiche del Dart Runtime
  • scripts contiene script Python per ottenere/compilare Dart

Generazione della soluzione Visual Studio per lo sviluppo

Uso Visual Studio per sviluppare Blutter su Windows. L'opzione --vs-sln può essere utilizzata per generare una soluzione Visual Studio.

root@kitploit:~
python blutter.py percorso\della\lib\arm64-v8a build\vs --vs-sln

TODO

  • Più analisi del codice
    • Argomenti delle funzioni e tipo di ritorno
    • Pseudocodice per pattern di codice
  • Generare uno script Frida migliore
    • Più classi interne
    • Modifica degli oggetti
  • App offuscata (mancano ancora molte funzioni)
  • Lettura del binario iOS
  • Input come apk o ipa
Scarica lo strumento