5 repositorios
Techniques for transforming source code into an unrecognizable but functional format to hide logic.
Distinguishing note: The candidates refer to character set standards (UTF-8/16) or internationalization utilities, not the intentional obfuscation of logic.
Explore 5 awesome GitHub repositories matching security & cryptography · Source Code Obfuscation. Refine with filters or upvote what's useful.
jsfuck es un lenguaje de programación esotérico y ofuscador de código fuente de JavaScript. Funciona como un codificador de código que transforma el código fuente de JavaScript estándar en un equivalente funcional compuesto por un conjunto mínimo de caracteres. El proyecto restringe su código fuente a seis caracteres específicos para ocultar la lógica y evitar filtros de seguridad que bloquean caracteres alfanuméricos estándar. Logra esto utilizando la coerción de tipos para derivar símbolos y accediendo a objetos internos del lenguaje mediante la manipulación de prototipos. El sistema permite la ejecución arbitraria de JavaScript convirtiendo cadenas en funciones ejecutables y recuperando el alcance global a través del contexto de ejecución. Gestiona la lógica compleja y los argumentos de función utilizando envoltorios de matriz y llamadas a constructores nativos.
JS-Fuck transforms standard JavaScript code into a functional equivalent using six specific characters to obfuscate the logic.
Pyarmor es un conjunto de herramientas para proteger software en Python mediante la ofuscación de código fuente, protección de bytecode y compilación binaria. Funciona como un ofuscador de código, protector de bytecode y compilador binario diseñado para prevenir la ingeniería inversa y el acceso no autorizado a scripts y paquetes de Python. El proyecto se distingue por proporcionar un gestor de licencias de software integral que permite licencias vinculadas al hardware. Esto permite a los desarrolladores bloquear la ejecución de scripts a dispositivos físicos o máquinas virtuales específicos y aplicar fechas de vencimiento estrictas mediante claves de tiempo de ejecución cifradas. Sus capacidades más amplias cubren la distribución segura mediante la generación de wheels ofuscados y ejecutables independientes para múltiples plataformas. La superficie de seguridad incluye comprobaciones de integridad en tiempo de ejecución, como la prevención de adjuntar depuradores, protección a nivel de memoria y la conversión de funciones de Python en extensiones de C compiladas. La herramienta incluye una interfaz de línea de comandos y admite la integración en pipelines de integración continua (CI) para automatizar el proceso de ofuscación durante las compilaciones.
Transforms Python source code and bytecode into an unrecognizable but functional format to prevent reverse engineering.
Este proyecto es una suite integral de ingeniería inversa para Android que funciona como descompilador, desofuscador de bytecode y herramienta de análisis de malware. Está diseñado para convertir binarios APK, DEX y OAT en código fuente legible por humanos utilizando una implementación nativa que no requiere una Máquina Virtual Java. La plataforma destaca por su integración con Frida para el análisis dinámico, permitiendo a los usuarios enganchar métodos, inyectar JavaScript personalizado y volcar la memoria del dispositivo en tiempo real. También cuenta con motores de seguridad especializados, incluyendo un motor de propagación de contaminación (taint propagation) y una máquina de estados de pila, para detectar fugas de privacidad, comportamientos maliciosos y vulnerabilidades de seguridad. La suite cubre una amplia gama de capacidades analíticas, incluyendo el parcheo y reempaquetado de binarios, mapeo de dependencias de referencias cruzadas y análisis de flujo de datos. Proporciona herramientas para la identificación de empaquetadores de software, decodificación de cadenas cifradas y búsqueda global de metadatos a través de los recursos de la aplicación. La herramienta proporciona una interfaz de línea de comandos y admite la automatización del análisis mediante scripts personalizados en Python o Java.
Provides mechanisms to normalize obfuscated identifiers so they can be used reliably within dynamic analysis scripts.
Fernflower es un descompilador de bytecode de Java y una herramienta de ingeniería inversa. Transforma archivos de clase de Java compilados de nuevo en código fuente de Java legible por humanos para reconstruir la lógica original del programa y los nombres de las variables. La herramienta funciona como un procesador de bytecode de línea de comandos capaz de procesar por lotes archivos de archivo Java y archivos de clase. Maneja específicamente el análisis de código ofuscado renombrando identificadores ambiguos y resolviendo conflictos de nombres para hacer que el código fuente resultante sea más fácil de seguir. El sistema emplea análisis estático para convertir bytecode a fuente, utilizando la extracción de información de depuración para restaurar los nombres de las variables locales. Reconstruye estructuras de programas a través del análisis de grafos de flujo de control, inferencia de tipos y la generación de un árbol de sintaxis abstracta.
Normalizes obfuscated identifiers by replacing ambiguous names with unique, consistent identifiers.
Este proyecto es una guía completa de desarrollo front-end y hoja de ruta diseñada para ayudar a los ingenieros a dominar las habilidades y estándares profesionales requeridos para el desarrollo web moderno. Sirve como referencia técnica para dominar HTML, CSS y JavaScript, proporcionando rutas de aprendizaje estructuradas y un mapa de las competencias profesionales necesarias para pasar de principiante a ingeniero web profesional. El recurso funciona como un directorio categorizado y una visión general del ecosistema de JavaScript. Cataloga frameworks, bibliotecas y utilidades estándar de la industria, ofreciendo recomendaciones específicas para la gestión de estado, frameworks CSS y generadores de sitios estáticos. La guía cubre un amplio espectro de capacidades de ingeniería, incluyendo arquitectura de UI, optimización del rendimiento web y auditoría de accesibilidad. También proporciona orientación sobre automatización de compilación, estrategias de despliegue y la selección de herramientas de desarrollo para flujos de trabajo profesionales.
Discusses techniques for transforming scripts into complex formats to protect intellectual property from reverse engineering.