Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
unblob — Dateien aus beliebigen Containerformaten extrahieren | Kitploit
Tools/GitHubGitHub/onekey-sec/unblob
Embedded-System-SicherheitReverse EngineeringForensikDatenwiederherstellungBinäranalyseFirmware-Analyse
GitHubonekey-sec/unblob

unblob

Dateien aus beliebigen Containerformaten extrahieren

Repository anzeigen
2.5k11153vor 2 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

unblob

Genau, schnell und einfach zu bedienendes Extraktionspaket für binäre Blobs.

unblob analysiert unbekannte binäre Blobs auf 78+ Archiv-, Komprimierungs- und Dateisystemformate, extrahiert deren Inhalt rekursiv und schnibbelt unbekannte Stücke heraus. Es ist der perfekte Begleiter zum Extrahieren, Analysieren und Reverse-Engineering von Firmware-Images.

CI PyPI version PyPI downloads License: MIT


Demo

demo


Funktionen

  • 78+ unterstützte Formate — Archive, Komprimierungsströme und Dateisysteme, einschließlich SquashFS, JFFS2, UBI/UBIFS, ext, CPIO, ZIP, 7-Zip, gzip, XZ, LZMA, LZ4 und viele mehr. Siehe die vollständige Liste.
  • Rekursive Extraktion — extrahiert Container innerhalb von Containern bis zu einer konfigurierbaren Tiefe (Standard: 10 Ebenen).
  • Präzise Erkennung von Blöcken — identifiziert sowohl Start- als auch Endoffsets jedes Blocks gemäß dem Formatstandard, wodurch Fehlalarme minimiert werden.
  • Carving unbekannter Blöcke — schnibbelt Daten heraus und meldet sie, die keinem bekannten Format entsprechen, und identifiziert automatisch Null-/0xFF-Padding.
  • Entropieanalyse — berechnet Shannon-Entropie und Chi-Quadrat-Wahrscheinlichkeit für unbekannte Blöcke, nützlich zum Erkennen verschlüsselter oder komprimierter Daten.
  • JSON-Metadatenberichte — erzeugt strukturierte Berichte mit Block-Offsets, Größen, Entropie, Dateieigentümer, Berechtigungen, Zeitstempeln und mehr.
  • Mehrfachverarbeitung — verwendet standardmäßig alle verfügbaren CPU-Kerne für schnelle Extraktion.
  • Erweiterbares Plugin-System — schreiben Sie benutzerdefinierte Format-Handler und Extraktoren und laden Sie sie zur Laufzeit mit --plugins-path.
  • Keine erhöhten Rechte erforderlich — läuft sicher als normaler Benutzer.
  • Kampferprobt — Fuzz-getestet gegen ein großes Korpus von Firmware-Images; basiert auf geprüften, fixierten Abhängigkeiten.

Installation

pip (empfohlen für die meisten Benutzer)

root@kitploit:~
pip install unblob

Installieren Sie dann die erforderlichen externen Extraktionswerkzeuge. Auf Ubuntu/Debian:

root@kitploit:~
sudo apt install android-sdk-libsparse-utils e2fsprogs p7zip-full unar zlib1g-dev liblzo2-dev lzop lziprecover libhyperscan-dev zstd lz4

Für SquashFS-Unterstützung installieren Sie auch sasquatch:

root@kitploit:~
curl -L -o sasquatch_1.0.deb "https://github.com/onekey-sec/sasquatch/releases/download/sasquatch-v4.5.1-6/sasquatch_1.0_$(dpkg --print-architecture).deb"
sudo dpkg -i sasquatch_1.0.deb && rm sasquatch_1.0.deb

Überprüfen Sie, ob alle Extraktionswerkzeuge verfügbar sind:

root@kitploit:~
unblob --show-external-dependencies

Docker (alles enthalten)

Das Docker-Image bündelt alle Extraktionswerkzeuge – keine zusätzliche Einrichtung erforderlich:

root@kitploit:~
docker run \
  --rm \
  --pull always \
  -v /path/to/extract-dir:/data/output \
  -v /path/to/files:/data/input \
  ghcr.io/onekey-sec/unblob:latest /data/input/firmware.bin

Hinweis: Bereitstellungspfade müssen demselben uid:gid gehören. Auf Mehrbenutzersystemen fügen Sie -u $UID:$GID zum Befehl hinzu.

Kali Linux

root@kitploit:~
sudo apt install unblob

Nix

root@kitploit:~
nix profile install nixpkgs#unblob

Oder fügen Sie es Ihrer NixOS-/home-manager-Konfiguration hinzu – siehe die Installationsdokumentation für Flake- und Overlay-Beispiele.

Aus dem Quellcode

root@kitploit:~
git clone https://github.com/onekey-sec/unblob.git
cd unblob
uv sync --no-dev
uv run unblob --show-external-dependencies

Erfordert Python ≥ 3.10, uv und eine Rust-Toolchain (für die kompilierten Erweiterungen).


Verwendung

Befehlszeile

Eine Datei extrahieren (Ausgabe geht standardmäßig an <Dateiname>_extract/):

root@kitploit:~
unblob firmware.bin

Ein benutzerdefiniertes Ausgabeverzeichnis angeben:

root@kitploit:~
unblob -e /tmp/output firmware.bin

Einen JSON-Metadatenbericht erstellen:

root@kitploit:~
unblob --report report.json firmware.bin

Rekursionstiefe begrenzen und Entropieanalyse aktivieren:

root@kitploit:~
unblob -d 5 -n 2 firmware.bin

Dateien überspringen, die einem magischen Zeichenfolge-Präfix entsprechen:

root@kitploit:~
unblob --skip-magic "POSIX tar archive" firmware.bin

Ein benutzerdefiniertes Handler-Plugin laden:

root@kitploit:~
unblob -P ./myplugins/ firmware.bin

Vollständige CLI-Referenz

root@kitploit:~
Usage: unblob [OPTIONS] FILE

Options:
  -e, --extract-dir DIRECTORY     Extract the files to this directory.
  -f, --force                     Force extraction even if outputs already exist.
  -d, --depth INTEGER             Recursion depth (default: 10).
  -n, --entropy-depth INTEGER     Entropy calculation depth (default: 1; 0 = off).
  -P, --plugins-path PATH         Load plugins from the provided path.
  -S, --skip-magic TEXT           Skip files with a given magic prefix.
  -p, --process-num INTEGER       Number of parallel worker processes (default: CPU count).
  --report PATH                   Write a JSON metadata report to this file.
  -k, --keep-extracted-chunks     Keep extracted chunks on disk.
  --delete-extracted-files TEXT   Delete intermediate files after extraction.
  -v, --verbose                   Increase verbosity (-v, -vv, -vvv).
  --show-external-dependencies    List required external tools and their status.
  -h, --help                      Show this message and exit.

Python-API

root@kitploit:~
from pathlib import Path
from unblob.processing import ExtractionConfig, process_file

config = ExtractionConfig(
    extract_root=Path("/tmp/output"),
    randomness_depth=1,
)

result = process_file(config, Path("firmware.bin"))

Um auch einen JSON-Bericht zu schreiben:

root@kitploit:~
process_file(config, Path("firmware.bin"), report_file=Path("report.json"))

ExtractionConfig akzeptiert dieselben Optionen wie die CLI: max_depth, process_num, skip_magic, force_extract, keep_extracted_chunks und mehr. Siehe die API-Referenz für die vollständige Liste.


Testen

unblob verwendet pytest. Integrations-Testvorrichtungen werden in Git LFS gespeichert.

root@kitploit:~
# Install Git LFS (one-time setup)
git lfs install

# Install all development dependencies
uv sync --all-extras --dev

# Run the full test suite
uv run pytest tests/ -v

Dokumentation

Die vollständige Dokumentation ist verfügbar unter https://unblob.org:

  • Installation
  • Benutzerhandbuch
  • Unterstützte Formate
  • API-Referenz
  • Entwicklungsleitfaden — Schreiben benutzerdefinierter Handler, Extraktoren und Plugins
  • Mitwirkungsleitfaden

Mitwirken

Beiträge sind willkommen! Wenn Sie Unterstützung für ein neues Format hinzufügen oder ein bestehendes verbessern möchten:

  1. Öffnen Sie ein Issue, um das Format zu beschreiben (Hexdumps, Spezifikationslinks und Beispieldateien helfen sehr).
  2. Lesen Sie den Entwicklungsleitfaden, um zu lernen, wie man Handler und Extraktoren schreibt.
  3. Forken Sie das Repository, implementieren Sie Ihre Änderungen und öffnen Sie einen Pull-Request.

Wenn Sie einfach nur ein Format unterstützt haben möchten und es nicht selbst implementieren wollen, öffnen Sie ein Issue – wir werden in Betracht ziehen, es hinzuzufügen.

Siehe CONTRIBUTING für weitere Details.


Lizenz

unblob ist unter der MIT-Lizenz lizenziert.

Tool herunterladen