4 Repos
Tools that convert raw binary data into structured formats based on specifications.
Distinct from Binary Stream Decoding: Shortlist is too narrow (animation, PAG) or too specific (compressed streams); requires a general category for file layout decoding.
Explore 4 awesome GitHub repositories matching operating systems & systems programming · Binary Format Decoders. Refine with filters or upvote what's useful.
fq ist ein Command-Line-Binärdatenprozessor, der zum Dekodieren, Transformieren und Analysieren von Roh-Byte-Streams und Bit-Level-Daten in strukturierte Formate verwendet wird. Er fungiert als funktionale Binär-Query-Engine, die das Filtern und Mappen binärer Strukturen ermöglicht, sowie als Konverter, der komplexe Binär-Blobs und proprietäre Dateiformate in Standard-JSON, YAML oder XML übersetzt. Das Tool zeichnet sich als Low-Level-Bit-Manipulator aus, der Bit-Level-Slicing, bitweise Operationen und kryptografisches Hashing auf Rohdateien durchführen kann. Es dient zudem als Netzwerkprotokoll-Analysator mit der Fähigkeit, fragmentierte TCP-Streams wieder zusammenzusetzen und TLS-Traffic für die Inspektion auf Anwendungsebene zu entschlüsseln. Das Projekt deckt breite Funktionen in der Binär-Analyse und Datentransformation ab, einschließlich Unterstützung für benutzerdefinierte Decoder-Definitionen und eine breite Palette spezialisierter Formate wie Mach-O, ASN1 BER und Avro OCF. Es bietet Utilities für Binärbaum-Suche, strukturierte Textdekodierung und bidirektionale Serialisierung zwischen Binär- und Textformaten. Benutzer können über ein Command-Line-Interface und ein interaktives REPL für Echtzeit-Query-Tests mit dem System interagieren.
Provides a functional query language to extract, transform, and navigate complex decoded binary structures.
Nanopb ist eine leichtgewichtige C-Implementierung von Protocol Buffers, die für ressourcenbeschränkte Systeme und Mikrocontroller entwickelt wurde. Sie fungiert sowohl als eingebettete Serialisierungsbibliothek zum Enkodieren und Dekodieren strukturierter Daten als auch als Codegenerator, der Definitionsdateien in kompakte C-Quell- und Header-Dateien umwandelt. Das Projekt zeichnet sich durch seinen Fokus auf statische Speicherallokation aus und verwendet feste Maximalgrößen für Strings und Arrays, um dynamische Speicherallokation und Heap-Fragmentierung zu vermeiden. Es setzt einen Callback-basierten Streaming-Mechanismus ein, um Nachrichten oder Felder zu verarbeiten, die den verfügbaren physischen RAM überschreiten, was die Handhabung von Daten variabler Länge ermöglicht, ohne den Systemspeicher zu erschöpfen. Die Bibliothek bietet breite Funktionen für Binärserialisierung, einschließlich Berechnung der enkodierten Größe, Verfolgung der Präsenz von Sub-Messages und Transport-Level-Framing. Sie enthält zudem Reflexions-Utilities für Feld-Iterationen, UTF-8-String-Validierung und strikte Grenzwerterzwingung, um Speichersicherheit beim Parsen nicht vertrauenswürdiger Binäreingaben zu gewährleisten.
Parses binary data streams into structured C data objects based on protobuf specifications.
Chucker ist ein HTTP-Inspektor auf dem Gerät für Android-Anwendungen, der den Netzwerkverkehr für die OkHttp-Bibliothek erfasst und aufzeichnet. Er fungiert als Netzwerk-Interceptor und Proxy-ähnliches Dienstprogramm, das die Analyse von API-Aufrufen direkt innerhalb der mobilen Anwendungsumgebung ermöglicht. Das Tool bietet eine lokale Schnittstelle zur Analyse von API-Interaktionen, die die Möglichkeit beinhaltet, binäre Antwort-Bodies in menschenlesbaren Text zu dekodieren. Es enthält zudem Sicherheitsfunktionen zur Maskierung sensibler Informationen in Request- und Response-Headern durch Schwärzungsregeln. Erfasste Transaktionen werden über eine lokale Datenbank mit konfigurierbarer zeitbasierter Datenaufbewahrung verwaltet, um alte Datensätze automatisch zu bereinigen. Das System integriert sich direkt in die Request- und Response-Pipeline, um den Datenaustausch und die Header zu überwachen.
Converts raw binary request and response payloads into structured, human-readable formats.
Miasm ist ein Python-Framework für Reverse Engineering, das für Binäranalyse, Disassembly und Modifikation entwickelt wurde. Es fungiert als Framework für die Binäranalyse, das Maschinencode in eine Zwischenrepräsentation (Intermediate Representation) überführt, um plattformunabhängige Sicherheitsforschung zu ermöglichen. Das System arbeitet als Emulations-Engine und Modifikations-Toolkit, das die Ausführung von Binärcode in einer virtuellen Umgebung erlaubt, um Zustandsänderungen ohne native Hardware nachzuverfolgen. Es bietet Tools für Binary Patching, um Roh-Binärdateien über verschiedene CPU-Architekturen und ausführbare Formate hinweg zu aktualisieren und zu modifizieren. Das Framework deckt Funktionen für Disassembly, das Lifting in Zwischenrepräsentationen und semantische Vereinfachung ab, um Binär-Obfuskation zu entfernen. Es beinhaltet Unterstützung für das Parsing von Binärformaten und Memory Mapping, um Referenzen und Layouts während der Analyse kompilierter Programme zu verfolgen.
Decodes multiple executable file formats through a modular system to extract machine code and metadata.