Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
firmware-analysis-toolkit — Plateforme de recherche en sécurité des firmwares combinant analyse binaire, traçage de flux de données (taint tracing) et émulation pour l’IoT, l’IA en périphérie (edge AI), les appareils mobiles et la robotique. | Kitploit
Outils/GitHubGitHub/attify/firmware-analysis-toolkit
Sécurité des Systèmes EmbarquésSécurité IoTAnalyse des VulnérabilitésRétro-ingénierieAnalyse de BinairesApprentissage et ÉducationAnalyse de Micrologiciel
GitHub

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
attify/firmware-analysis-toolkit

firmware-analysis-toolkit

Plateforme de recherche en sécurité des firmwares combinant analyse binaire, traçage de flux de données (taint tracing) et émulation pour l’IoT, l’IA en périphérie (edge AI), les appareils mobiles et la robotique.

Voir le dépôt
1.6k28348il y a 4 joursVérifié par Kitploit

FAT — Firmware Analysis Toolkit

FAT release Télécharger la dernière version · Journal des modifications · Installation

Firmware Analysis Toolkit est une boîte à outils de recherche en sécurité pour l'analyse de la sécurité des firmwares pour l'IoT, l'IA physique, les appareils mobiles et la robotique. Elle est principalement conçue pour la formation "Offensive IoT Exploitation" dispensée par Attify.

Elle a été construite sur la base d'une expérience pratique réelle de ce qui compte vraiment lorsqu'il s'agit d'enquêtes réelles sur la sécurité des firmwares.

L'objectif de FAT n'est pas seulement de construire une boîte à outils exceptionnelle et de pointe de classe mondiale pour la recherche en sécurité des firmwares, mais aussi de forger des professionnels et des praticiens qui opèrent à leur plein potentiel, où l'outil devient un superpouvoir cognitif s'il est utilisé de certaines manières, tout en restant suffisamment simple pour être utilisé par ceux qui découvrent le domaine.

Parmi les fonctionnalités figurent la classification de firmwares inconnus, l'extraction de systèmes de fichiers, la cartographie du code lié à la confiance, le suivi de la propagation (taint), et la coordination de l'émulation QEMU.

Ce que FAT peut analyser

  • Blobs et répertoires inconnus : conteneurs, membres compressés, régions à haute entropie, signaux MCU et fichiers de firmware candidats
  • Images de firmware : en-têtes, enveloppes de mise à jour, partitions, bootloaders et différences entre images
  • Systèmes de fichiers Linux extraits : inventaire, intention de démarrage, binaires porteurs de confiance, matériel cryptographique et preuves sous forme de chaînes
  • Binaires ELF : imports, exports, tables de gestionnaires, puits de code strippé, décompilation et propagation source-à-puits
  • Images bare-metal et MCU : tables de vecteurs, cartes mémoire, indices de périphériques, autorité d'écriture flash et preuves de transfert de démarrage
  • Artefacts d'IA en périphérie : fichiers MAGIK/JZDL, TFLite, ONNX et Qualcomm DLC, ainsi que les runtimes d'inférence visibles
  • Applications Android : inventaire APK, pistes de découverte, localité, chaînes de capacités et frontières de transfert
  • Dépôts de code source : requêtes d'invariants, conseils de correctifs et recherches de variantes proches

Démarrage rapide

Téléchargez un bundle binaire depuis Releases, ou compilez la dernière version régulière avec Rust 1.90 ou plus récent :

git clone --branch v2.0.1 --depth 1 https://github.com/attify/firmware-analysis-toolkit.git
cd firmware-analysis-toolkit
cargo build --release --locked
cargo install --path crates/fat_cli --locked
python3 scripts/build-runtime-data-bundle.py --output ./dist/fat-data.zip
fat data install --archive ./dist/fat-data.zip
fat doctor

Sur Arch Linux ou Omarchy, commencez par les étapes d'installation Arch pour les paquets prérequis et les outils optionnels.

Programme d'installation en une seule fois pour les hôtes pris en charge :

./scripts/install.sh --install-system-deps

Consultez INSTALL.md pour les options d'installation et les outils optionnels.

Référence rapide des commandes

  • Aide : fat -h
  • Identifier un firmware : fat $firmware ou fat identify --file $firmware
  • Nouveau projet : fat new $firmware
  • Extraire le système de fichiers : fat extract $firmware
  • Analyser : fat analyze $firmware
  • Émulation : fat emulate --project $firmware

Premier contact avec un fichier inconnu

fat ./firmware.bin
fat inspect update --file ./firmware.bin --rootfs ./rootfs --reference ./older.bin

fat ./firmware.bin est un raccourci pour fat identify --file ./firmware.bin. Il donne un aperçu compact de l'identité et de la structure du fichier. Ajoutez --details pour les tableaux justificatifs. Pour les images MCU brutes, inspectez le mapping, le démarrage, les interruptions et le matériel :

fat inspect mcu --file ./firmware.bin
fat inspect mcu --file ./firmware.bin --details

Les deux commandes prennent en charge --json pour le rapport d'analyse structuré complet.

De l'image à l'exécution

Le pipeline du démarrage rapide, de bout en bout :

fat new ./firmware.bin
fat extract .fat-projects/firmware
fat analyze .fat-projects/firmware
fat preflight .fat-projects/firmware
fat emulate --project .fat-projects/firmware

Triage binaire et flux de données

fat r2-triage --file ./usr/sbin/httpd --json
fat taint --file ./www/cgi-bin/diag.cgi --summary
fat taint-query --file ./www/cgi-bin/diag.cgi
fat taint-cross --rootfs ./rootfs
fat taint-cross --rootfs ./rootfs --source-profile ./my-target-models.yaml --state-profile ./my-target-state.yaml

Flux de données des scripts shell

fat taint --lang shell --file ./app/init/wifi.sh --summary
fat taint --lang shell --rootfs ./extracted-rootfs --json
fat taint --lang shell --rootfs ./extracted-rootfs --source-profile ./my-target-shell.yaml --severity high

Binaires strippés

Trouvez les puits de manière statique, puis préparez les hooks d'exécution pour les mêmes adresses :

fat r2-triage --file ./usr/sbin/httpd --json
fat sink-discovery --file ./usr/sbin/httpd --json > sinks.json
fat handler-table --file ./usr/sbin/httpd --json > handlers.json
fat taint --file ./usr/sbin/httpd --sink-candidates sinks.json --json > taint.json
fat instrument-hooks --from-sinks sinks.json --output hooks.yaml
fat emulate --project .fat-projects/firmware --instrument hooks.yaml

Balayage de preuves à l'échelle du système de fichiers

fat tree --rootfs ./rootfs --profile inventory --summary --json
fat search --rootfs ./rootfs --profile credentials -I --context 2
fat startup-map --rootfs ./rootfs --profile cloud-tls
fat crypto-census --rootfs ./rootfs
fat trust-map --rootfs ./rootfs

Requête d'invariant basée sur le code source

fat invariant query \
  --fixture tests/fixtures/query/source/invariant-permission \
  --rule 'Every privileged override method must call enforcePermission()'
fat patch check --help
fat verify --help

Sécurité

  • L'émulation exécute du code fournisseur non fiable.
  • Consultez SECURITY.md avant de traiter des images non fiables ou d'exposer un service émulé à un réseau.
  • Il est de votre responsabilité de disposer d'une autorisation pour les cibles sur lesquelles vous travaillez.

Guides détaillés

Télécharger l’outil