18 dépôts
Removal of non-essential symbolic information from compiled binaries to reduce disk footprint.
Distinct from Debug Symbol Configurators: Distinct from Debug Symbol Configurators: focuses on the act of stripping symbols from a binary rather than configuring their generation during build.
Explore 18 awesome GitHub repositories matching development tools & productivity · Debug Symbol Stripping. Refine with filters or upvote what's useful.
Distroless provides a set of OCI-compliant minimal base images and hardening tools designed to create secure, language-specific execution environments. These images are stripped of non-essential system binaries, shells, and package managers to reduce the container attack surface. The project utilizes upstream-tracked automated patching to monitor operating system releases and generate updated images when security vulnerabilities are addressed. It ensures supply chain integrity through image provenance verification using ephemeral-key digital signatures. The system supports the generation of
Provides base images stripped of non-essential system binaries to significantly reduce the container attack surface.
Kaniko is an OCI container image builder that executes Dockerfiles in userspace without requiring a privileged daemon. It is designed as a Kubernetes-native image builder, allowing for the construction and pushing of images to registries from within a cluster or container. The tool ensures reproducible build generation by stripping timestamps from image layers, guaranteeing that identical source inputs produce the same image identifier. It supports multi-architecture image building, allowing for the creation of images compatible with various hardware and operating systems from a single proces
Ensures reproducible image identifiers by stripping timestamps from image layers.
GenericAgent is an LLM agent framework and autonomous system controller designed to manage local systems, web browsers, and hardware interfaces through action and observation loops. It functions as a tool orchestrator that routes model calls to local executors, enabling the automation of complex tasks on a host machine. The project is distinguished by its self-evolving AI agent capabilities, which convert successful execution paths into reusable procedural scripts and skill trees to reduce future reasoning overhead. It employs a context optimization engine that utilizes layered memory hierarc
Lowers the storage and token footprint of old conversation rounds by truncating reasoning tags and using placeholders.
This project is a command-line synchronization client for OneDrive and SharePoint libraries on Linux. It functions as a synchronization engine that aligns local filesystems with cloud storage through bidirectional, unidirectional, or download-only workflows. The client supports headless authentication for servers without web browsers and can be deployed as a background service or within a containerized environment. It enables the management of multiple distinct cloud accounts on a single system and integrates with shared SharePoint sites and document libraries. The synchronization engine inc
Supports builds with debug symbols to provide source file and line information in crash traces.
This project is a collection of techniques and configurations for reducing the disk footprint of compiled Rust executables. It serves as a guide and toolset for binary size optimization, providing strategies to minimize the final executable size through compiler flags and configuration. The project focuses on aggressive size reduction strategies, including recompiling the standard library from source to prune unused functions and implementing no-standard-library modes for memory-constrained environments. It details how to eliminate runtime overhead by removing standard library entry points an
Provides methods to remove non-essential symbol information from compiled binaries to reduce file size.
Le WebAssembly Binary Toolkit est une suite d'outils pour inspecter, valider et transformer des modules WebAssembly entre des représentations binaires et lisibles par l'homme. Il inclut un interpréteur basé sur une pile pour exécuter les modules et un transpiler qui convertit les fichiers binaires en code source C et en en-têtes. La boîte à outils fournit des utilitaires pour assembler du texte lisible en modules binaires et désassembler des fichiers binaires en texte. Elle dispose d'un formateur de texte pour normaliser les définitions en une représentation plate canonique et prend en charge la conversion de binaires en formats S-expression. Le projet couvre de larges domaines de capacités, notamment la manipulation binaire, comme la suppression des sections de métadonnées, et l'inspection de modules pour extraire des statistiques structurelles et des symboles de débogage. Il fournit également des outils de validation pour vérifier la conformité des binaires aux spécifications techniques et un environnement d'exécution pour la logique compatible WASI.
Reads debug names and metadata from binary modules to recover original source identifiers.
Trail of Bits restores functionality to GDB when debugging binaries without debugging symbols, enabling meaningful breakpoints and variable inspection.
Bloaty est un profileur de taille binaire et un analyseur de format exécutable qui attribue chaque octet d'un binaire à des symboles ou des unités de compilation spécifiques. Il fonctionne comme un profileur d'unité de compilation et un démangleur de symboles C++, mappant la taille binaire vers les fichiers sources et traduisant les noms mangled en formats lisibles par l'humain. Le projet se distingue comme un outil de diff binaire capable de comparer deux versions d'un binaire pour isoler des symboles ou des sections spécifiques responsables de régressions de taille. Il fournit une prise en charge spécialisée pour récupérer les symboles dans les binaires stripés en les associant à des fichiers de débogage externes utilisant des identifiants de build. L'outil fournit une analyse binaire complète pour les formats ELF, Mach-O, PE/COFF et WebAssembly. Ses capacités incluent l'analyse des sections de l'éditeur de liens, des segments mémoire et des archives de bibliothèques statiques, ainsi que l'identification de l'espace consommé par les fonctions inlinées. Les utilisateurs peuvent isoler davantage les données en utilisant le filtrage par expression régulière et exporter les résultats de profilage dans des formats CSV ou TSV.
Restores symbol and compile unit information for stripped binaries using external debug files and build IDs.
LIEF est un framework pour analyser, modifier et examiner les formats binaires exécutables et les caches partagés système à travers plusieurs plateformes. Il sert de bibliothèque multiplateforme pour la manipulation programmatique des fichiers binaires ELF, PE et MachO. Le projet fournit des outils pour altérer la structure interne et les sections des fichiers exécutables afin de changer le comportement du programme. Il inclut également un analyseur dédié pour récupérer des bibliothèques dynamiques individuelles à partir de caches partagés système combinés. La boîte à outils couvre l'analyse binaire exécutable, le désassemblage de code machine et l'extraction de métadonnées de débogage et d'informations de symbole. Elle prend en outre en charge la traduction bidirectionnelle du code machine et de l'assemblage à travers diverses architectures de processeur.
Extracts symbolic names and debugging metadata from compiled binary files and symbol files.
Garble is an obfuscation tool for Go binaries. It transforms compiled Go programs by hashing identifiers, package paths, and filenames into short, opaque strings, making reverse engineering more difficult. The tool produces reproducible results from identical source and a user-supplied seed, enabling verifiable builds. Obfuscation can be restricted to only those packages that match user-defined patterns, leaving other parts of the codebase untouched. Constant string literals in the binary are replaced with runtime-resolved expressions to hide their original content. The tool integrates direct
Strips debug positions, symbol tables, and runtime metadata from compiled Go binaries.
gdext fournit un ensemble de liaisons de langage pour écrire une logique de jeu native haute performance en Rust pour le moteur Godot 4. Il sert de framework pour créer des extensions de moteur natives et des classes personnalisées via la bibliothèque GDExtension, permettant aux développeurs d'étendre les fonctionnalités principales du moteur sans recompiler le code source du moteur. Le projet inclut une chaîne d'outils Rust WebAssembly dédiée pour compiler la logique native en modules pour une exécution dans les navigateurs web. Ce système prend en charge la compilation compatible WebAssembly avec des configurations spécifiques pour le threading web et le débogage de modules. La boîte à outils couvre un large éventail de capacités d'intégration au moteur, y compris les définitions de classes personnalisées, la gestion des nœuds de l'arbre de scène et la gestion des signaux avec typage sécurisé. Elle fournit des utilitaires pour la simulation physique, la génération de contenu procédural et le développement de plugins d'éditeur personnalisés. Le développement est soutenu par des outils d'automatisation pour la configuration de projet, le test d'extensions natives et le test unitaire de logique.
Produces binaries with debug symbols to enable breakpoints and memory inspection in browser developer tools.
w64devkit is a portable MinGW-w64 C/C++ development kit and a self-contained GCC toolchain for Windows. It provides a native build environment for compiling C, C++, and Fortran source code into x86 and x64 executable binaries without requiring system-wide installation or modifications to the host registry and environment variables. The toolchain is distributed as a self-contained suite of compilers, linkers, and assemblers that runs from any directory. It includes a specialized shell-based environment wrapper to automatically configure the path to its binaries and utilizes static linking to e
Inspects program execution and analyzes memory to identify undefined behavior and defects in compiled Windows binaries.
bflat est un compilateur natif et un générateur de binaire ahead-of-time pour C#. Il transforme le code source en exécutables natifs autonomes et en code machine qui s'exécutent sans nécessiter d'environnement runtime séparé. Le projet propose une chaîne d'outils native multiplateforme capable de générer des binaires pour plusieurs systèmes d'exploitation et architectures à partir d'un seul environnement. Il inclut un mécanisme pour exporter la logique C# en tant que bibliothèques natives partagées via une interface de fonction étrangère (FFI) pour l'intégration avec d'autres langages de programmation. Pour prendre en charge les environnements aux ressources limitées, il fournit un optimiseur binaire qui réduit la taille de l'exécutable en supprimant les données de réflexion, les métadonnées de globalisation et les informations de stack trace. Il permet également la sélection de différentes profondeurs de bibliothèque standard pour équilibrer la richesse des fonctionnalités par rapport à l'empreinte binaire finale. La chaîne d'outils prend en charge le débogage au niveau système, permettant l'utilisation de débogueurs natifs pour définir des points d'arrêt et inspecter les variables directement au sein du code machine compilé.
Reduces executable size by stripping reflection data, globalization strings, and stack trace metadata.
Ce projet est une interface de débogage de navigateur spécialisée conçue pour surveiller les éléments DOM, le trafic réseau et l'exécution JavaScript. Il fournit une interface utilisateur côté client pour inspecter et déboguer les applications web, permettant la modification en temps réel des styles CSS et l'investigation du runtime JavaScript. La boîte à outils inclut des outils d'analyse dédiés pour WebAssembly, avec mise en évidence du désassemblage, inspection de la portée et profilage de l'exécution binaire. Elle fournit également un inspecteur de trafic réseau pour analyser les requêtes HTTP et un éditeur de style CSS pour tester les propriétés et les at-rules. Le système couvre un large éventail de capacités, notamment la modification de l'arborescence DOM, le profilage de performance frontend avec limitation du CPU et le débogage des service workers. Il gère également la gestion des ressources source, comme le mappage des assets réseau vers des fichiers locaux et le pretty-printing du code minifié, tout en prenant en charge la localisation multilingue. Le projet est développé en utilisant TypeScript et emploie une architecture basée sur les composants avec chargement de modules à la demande.
Associates loaded scripts with specific plugins based on language and symbol type to handle variable transformations.
Statik is a build tool for the Go language that transforms directory structures and files into byte arrays within source code. This process enables the creation of single-binary distributions by embedding static assets directly into the compiled executable. The tool ensures deterministic builds by stripping file modification timestamps, resulting in consistent binary outputs across different environments. It also includes a build-time asset filter to limit the inclusion of specific file extensions and minimize the final executable size. To access these embedded assets, the project provides a
Removes file modification timestamps during the build process to ensure bit-for-bit identical binary outputs.
Obfuscar is a .NET assembly obfuscator and managed code protector designed to prevent reverse engineering of compiled binaries. It functions as a binary metadata compressor and security tool that renames symbols and encodes strings to protect intellectual property. The project distinguishes itself by altering the Common Intermediate Language structure and modifying assembly metadata tables to hide implementation details. It provides string-to-buffer encoding to prevent plain-text analysis of constants and includes a strong-name re-signing mechanism to ensure modified assemblies remain valid a
Reduces the size of executable files by shortening metadata identifiers and renaming internal symbols.
OffensiveRust is a red team toolkit and malware development kit written in Rust. It serves as an evasion framework and post-exploitation library, providing a collection of offensive security primitives and a Windows API wrapper for interacting with low-level system functions and undocumented APIs. The project focuses on bypassing security software through direct system calls, memory obfuscation, and stealthy payload execution. It implements techniques to defeat static binary analysis via compile-time string encryption and payload obfuscation, while avoiding detection using parent process ID s
Removes metadata and debug symbols from compiled binaries to reduce size and hinder reverse engineering.
PS2Recomp is a static recompiler for PlayStation 2 that translates machine instructions from executable binaries into source code to enable execution on modern hardware. It functions as a binary-to-source translator and a binary analysis tool designed to facilitate the preservation of legacy software. The project distinguishes itself through a hardware emulation runtime that manages memory models and register contexts, combined with a static binary patcher for replacing raw instructions and overriding function bindings. It utilizes a specialized vector unit instruction execution system that m
Binds stripped function addresses to runtime handlers using configuration files or exported maps.