4 dépôts
Automated renaming of functions, classes, and variables to make source code irreversible.
Distinct from Source Code Obfuscation: Focuses on security-driven automated renaming, whereas the parent covers general logic hiding techniques.
Explore 4 awesome GitHub repositories matching security & cryptography · Identifier Obfuscation. Refine with filters or upvote what's useful.
Pyarmor est un ensemble d'outils pour protéger les logiciels Python via l'obfuscation du code source, la protection du bytecode et la compilation binaire. Il fonctionne comme un obfuscateur de code, un protecteur de bytecode et un compilateur binaire conçu pour empêcher l'ingénierie inverse et l'accès non autorisé aux scripts et paquets Python. Le projet se distingue en fournissant un gestionnaire de licence logicielle complet qui permet une licence liée au matériel. Cela permet aux développeurs de verrouiller l'exécution des scripts sur des appareils physiques ou des machines virtuelles spécifiques et d'appliquer des dates d'expiration strictes via des clés d'exécution chiffrées. Ses capacités plus larges couvrent la distribution sécurisée via la génération de wheels obfusqués et d'exécutables autonomes pour plusieurs plateformes. La surface de sécurité inclut des vérifications d'intégrité à l'exécution, telles que la prévention de l'attachement de débogueur, la protection au niveau de la mémoire et la conversion de fonctions Python en extensions C compilées. L'outil inclut une interface en ligne de commande et prend en charge l'intégration dans des pipelines d'intégration continue (CI) pour automatiser le processus d'obfuscation lors des builds.
Renames functions, classes, methods, and variables to make source code irreversible while preserving logical execution.
Ce projet est une suite complète de rétro-ingénierie Android qui fonctionne comme un décompilateur, un désobfuscateur de bytecode et un outil d'analyse de malware. Il est conçu pour convertir les binaires APK, DEX et OAT en code source lisible par l'homme en utilisant une implémentation native qui ne nécessite pas de machine virtuelle Java. La plateforme se distingue par son intégration avec Frida pour l'analyse dynamique, permettant aux utilisateurs de hooker des méthodes, d'injecter du JavaScript personnalisé et de dumper la mémoire de l'appareil en temps réel. Elle dispose également de moteurs de sécurité spécialisés, incluant un moteur de propagation de taint et une machine à états de pile, pour détecter les fuites de confidentialité, les comportements malveillants et les vulnérabilités de sécurité. La suite couvre un large éventail de capacités analytiques, incluant le patching et le repackaging de binaires, le mappage des dépendances par références croisées et l'analyse de flux de données. Elle fournit des outils pour l'identification des packers logiciels, le décodage de chaînes chiffrées et la recherche globale de métadonnées à travers les ressources de l'application. L'outil fournit une interface en ligne de commande et prend en charge l'automatisation de l'analyse via des scripts Python ou Java personnalisés.
Provides mechanisms to normalize obfuscated identifiers so they can be used reliably within dynamic analysis scripts.
Fernflower est un décompilateur de bytecode Java et un outil d'ingénierie inverse. Il transforme les fichiers de classe Java compilés en code source Java lisible par l'homme pour reconstruire la logique originale du programme et les noms de variables. L'outil fonctionne comme un processeur de bytecode en ligne de commande capable de traiter par lots des archives Java et des fichiers de classe. Il gère spécifiquement l'analyse de code obfusqué en renommant les identifiants ambigus et en résolvant les conflits de nommage pour rendre le code source résultant plus facile à suivre. Le système emploie l'analyse statique pour convertir le bytecode en source, utilisant l'extraction d'informations de débogage pour restaurer les noms de variables locales. Il reconstruit les structures de programme via l'analyse de graphe de flux de contrôle, l'inférence de type et la génération d'un arbre de syntaxe abstraite.
Normalizes obfuscated identifiers by replacing ambiguous names with unique, consistent identifiers.
ConfuserEx is a security toolset for .NET applications that functions as a code obfuscator, binary encryptor, and application protector. Its primary purpose is to prevent reverse engineering by hiding sensitive application logic and data. The project employs specific hardening techniques including symbol renaming to hinder human readability and control-flow mutation to confuse decompilers. It further protects binaries by encrypting constants and resources to stop static analysis and memory dumping, while blocking the use of debuggers and profilers to prevent runtime analysis. Additional capa
Automatically renames identifiers and members to random strings to hinder human readability.