Unblob : évolution d’un outil d’extraction de firmwares — Quentin Kaiser
Date : 03 juin 2026 à 12:00 — 15 min.
Présentation d'Unblob
Unblob est une suite d’extraction open source (licence MIT) dédiée à l’analyse de firmwares et autres binary blobs, conçue pour être à la fois précise, sûre et rapide. Elle prend en charge une large gamme* de formats (archives, compressions, systèmes de fichiers) et permet une extraction récursive tout en signalant les données inconnues restantes. L’outil est utilisable aussi bien en ligne de commande que comme bibliothèque Python, ce qui facilite son intégration dans des pipelines d’analyse automatisés.
L’objectif principal d’Unblob est de permettre l’extraction fiable de firmwares hétérogènes. Contrairement à des outils traditionnels comme Binwalk, Unblob identifie précisément les délimitations (offsets de début et de fin) des composants extraits et gère les formats multi-fichiers ou multi-volumes. Cette approche réduit les faux positifs et améliore la prise en charge de firmwares fragmentés ou non standards.
Contenu de la démonstration
La démonstration (15 minutes) s’articulera autour des points suivants :
- Présentation rapide de l’outil : problématique adressée et principes de fonctionnement (détection d’offsets, extraction récursive, rapport JSON).
- Extraction en conditions réelles : analyse d’un firmware afin de mettre en évidence la rapidité et l’efficacité d’Unblob dans l’identification et l’extraction automatique des différents composants.
- Sécurité : illustration du sandboxing via Landlock à travers un cas d’extraction potentiellement malveillant, montrant comment Unblob empêche toute écriture hors du périmètre autorisé.
- Modularité : présentation du développement d’un handler simple en Python, accompagnée de retours d’expérience issus de la conception et de la maintenance de plus d’une centaine de handlers.
- Intégrations : aperçu de l’intégration d’Unblob dans des outils et plateformes tierces (ex. Binary Ninja, EMBA) et de son usage dans des workflows d’analyse de firmware à grande échelle.
Références
- Dépôt du projet : https://github.com/onekey-sec/unblob
- Documentation officielle : https://unblob.org
* 70 formats supportés dans la version publique, 130 dans la version commerciale.