11 dépôts
Low-level tools for analyzing, generating, and modifying Java bytecode.
Explore 11 awesome GitHub repositories matching part of an awesome list · Bytecode Manipulation. Refine with filters or upvote what's useful.
Arthas is a Java diagnostic tool and runtime debugger designed for real-time troubleshooting of applications. It functions as a remote diagnostics agent that allows users to inspect the runtime state of a Java process, including its heap objects and classloader hierarchies, without requiring a process restart. The project distinguishes itself through advanced bytecode manipulation capabilities, enabling live class hotswapping and the modification of bytecode in running processes. It supports in-memory source compilation and runtime bytecode decompilation to verify and update logic instantly w
Modifies class bytecode at runtime using ASM to insert probe logic for method tracing and monitoring.
Apktool is an Android APK reverse engineering tool designed to decode application packages into human-readable form and rebuild them after modification. It functions as a Dalvik bytecode disassembler and a resource decoder, transforming binary Android XML and DEX files into editable text and Smali representation. The project serves as an application rebuilder, packing modified resources and Smali code back into a functional Android application package. This capability enables the modification of application logic and resources for testing and deployment. The tool covers a broad surface of an
Provides the capability to analyze and step through disassembled Android bytecode to find vulnerabilities.
This project is a Java bytecode reverse engineering suite that functions as a disassembler, decompiler, and editor for Java class files and Android APK binaries. It provides tools to transform compiled bytecode into assembly instructions or readable source code. The toolset supports Android APK analysis and Java binary patching, allowing for the modification of source code or bytecode and subsequent recompilation into functional binaries. It includes capabilities for removing Java obfuscation and performing malware analysis through the detection of malicious code patterns. The system incorpo
Reverse engineering suite for JAR and APK files.
Byte Buddy is a runtime code generation and bytecode manipulation library for Java. It provides a fluent API for creating and modifying Java classes during execution, enabling developers to define class structures, methods, and fields programmatically without requiring a compiler or direct bytecode assembly. The library supports agent-based class transformation, allowing loaded classes to be modified during JVM startup or runtime through a Java agent that intercepts class loading. It offers bytecode-level method interception for fine-grained control over method behavior, annotation-based code
Offers low-level bytecode editing capabilities for adding, replacing, or removing methods and fields.
cglib est une suite d'outils pour la génération de bytecode JVM, la transformation de classes et le proxying dynamique. Elle fournit une API de haut niveau pour créer et transformer du bytecode Java à l'exécution afin de modifier le comportement des classes et un framework pour intercepter les appels de méthodes et l'accès aux champs. Le projet implémente la génération de proxy dynamique pour prendre en charge la programmation orientée aspect et les modèles d'accès aux données personnalisés. Il inclut également un gestionnaire de sérialisation pour implémenter des contrats de sérialisation en ajoutant des méthodes spécifiques et en contrôlant le remplacement d'objets au sein des classes proxy. La bibliothèque couvre la manipulation de bytecode et la transformation de code à l'exécution pour altérer les structures de classe avant leur chargement. Elle inclut en outre des techniques d'optimisation des performances pour réduire la surcharge des proxies via le filtrage de méthodes et des callbacks légers.
Library for generating bytecode.
Javassist est une boîte à outils d'ingénierie de bytecode pour analyser, modifier et générer du bytecode Java et des fichiers de classe. Il fonctionne comme une bibliothèque de manipulation de bytecode qui permet l'édition de fichiers de classe via un accès direct au bytecode ou une syntaxe de code source de haut niveau. Le projet fournit des outils spécialisés pour la création programmatique de nouvelles classes et interfaces Java pendant l'exécution. Il inclut un générateur de proxy dynamique pour intercepter les appels de méthodes et un intercepteur de chargeur de classe qui modifie automatiquement les définitions de classe au fur et à mesure qu'elles sont chargées dans la machine virtuelle Java. Des capacités supplémentaires couvrent l'analyse de bytecode Java et le rechargement de code à chaud pour remplacer les définitions de classe dans un processus en cours d'exécution. La boîte à outils supporte également la modification de fichiers de classe compilés et l'inspection des instructions de méthode pour comprendre le flux du programme.
Simplified library for editing bytecode.
BiliRoamingX is a collection of binary modifications and an application feature unlocker for a mobile client. It functions as a set of patches designed to unlock hidden features, remove regional restrictions, and modify the behavior and appearance of the application. The project utilizes a customization framework to remove unwanted page elements and adjust interface scales. It includes a media playback optimizer that forces default high resolutions and enables custom playback speeds for video streams. The modification suite covers regional restriction bypasses, content feed filtering, and su
Inserts custom assembly-like code into the Android executable to implement new logic and bypass restrictions.
Mixin is a trait/mixin and bytecode weaving framework for Java using ASM
Runtime bytecode manipulation using standard Java code.
Jitescript - Java API for Bytecode
Bytecode generation library similar to BiteScript.
A project to cause (controlled) destruction on your jvm application
Chaos engineering tool for injecting failures at the bytecode level.
Cojen/Maker is a lightweight, full-featured, low-level dynamic Java class generator designed for ease of use.
Low-level bytecode generation utility.