A collection of tools and examples for fuzzing Android applications using AFL++ with Frida mode.
Android-fuzzing is a collection of tools and examples for performing greybox fuzzing on Android applications using AFL++ with Frida mode. It provides build configurations, harness examples, and libraries to help security researchers fuzz both native code and JNI functions in Android environments. The project addresses the challenge of instrumenting and fuzzing mixed Java/native codebases on mobile platforms.
Security researchers, penetration testers, and Android developers who need to perform security testing through fuzzing on Android applications, particularly those with native components or JNI interfaces.
Developers choose this project because it provides practical, ready-to-use examples and configurations for a challenging fuzzing scenario—Android applications with mixed Java/native code. It bridges AFL++'s powerful fuzzing capabilities with Frida's dynamic instrumentation specifically for Android platforms.
This project provides materials for performing greybox fuzzing on Android applications by leveraging AFL++ with Frida mode. It includes build configurations, example harnesses, and libraries to facilitate fuzzing of both native and JNI functions in Android environments.
The project emphasizes practical, reproducible Android fuzzing setups that bridge native code instrumentation with Java/JNI environments through Frida's dynamic instrumentation capabilities.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a CMake configuration to build AFL++ Frida mode specifically for Android 12 aarch64, addressing platform-specific instrumentation challenges as noted in the README.
Includes native, weakly linked JNI, and strongly linked JNI harnesses, covering various fuzzing scenarios for mixed Java/native codebases, which are detailed in the repository.
Offers the jenv library to initialize Java environments from native harnesses, enabling practical fuzzing of JNI functions in Android applications.
Comes with a ready-to-use APK target and is associated with a detailed blog post, ensuring a hands-on, reproducible setup for learning and testing.
Specifically configured for Android 12 aarch64 only, requiring modifications for other Android versions or architectures, which limits immediate applicability.
Requires building AFL++ with Frida mode using CMake and Android NDK, which can be intricate and time-consuming for users unfamiliar with these tools.
Heavily relies on an external blog post for build and usage instructions, lacking comprehensive in-repository documentation that could hinder quick adoption.