Java Reverse Engineering

Open-source Java projects categorized as Reverse Engineering Edit details

Top 20 Java Reverse Engineering Projects

  • ghidra

    Ghidra is a software reverse engineering (SRE) framework

    Project mention: IDA Pro 8.0 released. | reddit.com/r/ReverseEngineering | 2022-07-30
  • Apktool

    A tool for reverse engineering Android apk files

    Project mention: How do people make mod apk games? | reddit.com/r/AndroidGaming | 2022-07-22

    You can use apktool https://ibotpeaches.github.io/Apktool/ to decompile an apk into code, that can then be modified, and recompiled

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • Recaf

    The modern Java bytecode editor

    Project mention: Visual diff text comparator GUI component | reddit.com/r/JavaFX | 2022-08-08

    I did something like this, but its not its own control/library: https://github.com/Col-E/Recaf/blob/dev3/recaf-ui/src/main/java/me/coley/recaf/ui/pane/DiffViewPane.java

  • simplify

    Android virtual machine and deobfuscator

  • fernflower

    Unofficial mirror of FernFlower Java decompiler (All pulls should be submitted upstream)

    Project mention: New open source Java decompiler | reddit.com/r/java | 2022-04-28

    Hello! Today I'm happy to announce the release of a project that me and my friends have been working on over the course of the last year, Quiltflower! Originally intended just for use with the QuiltMC toolchain with Minecraft, Quiltflower quickly expanded to be a general purpose java decompiler aiming to create code that is as accurate and clean as possible. If the name sounds familiar it's because Quiltflower is a fork of Fernflower, the (in)famous decompiler that was developed by Stiver, maintained by Jetbrains, and became the default decompiler in Intellij IDEA. Fernflower also quickly found its way into many other tools. After many frustrations with it myself with its decompiled code structuring and quality I decided to do something about it, and here we are! Over the past year, Quiltflower has added support for features such as modern string concatenation, a code formatter, sealed classes, pattern matching, switch expressions, and try-with-resources, and more. Quiltflower also focuses on the code quality of the decompiled output, and takes readability very seriously. We'd greatly appreciate it if you'd give it a try, with our Intellij Plugin or as a standalone jar. While it has come a long way it's still a work in progress, and feedback can be reported on our issue tracker.

  • BinAbsInspector

    BinAbsInspector: Vulnerability Scanner for Binaries

    Project mention: BinAbsInspector: BinAbsInspector: Vulnerability Scanner for Binaries | reddit.com/r/CKsTechNews | 2022-04-20
  • JByteMod-Beta

    Java bytecode editor

    Project mention: Online Mode | reddit.com/r/GoldenAgeMinecraft | 2021-12-19

    First go grab JByteMod from their GitHub https://github.com/GraxCode/JByteMod-Beta/releases Download the latest zip version (currently JByteMod-1.8.2.zip) and unzip the contents to somewhere on your computer. Run the JByteMod-1.8.2.jar you just unzipped. (You need a Java RTE of your choice) Menu File > Load > Select your server jar file Menu Search > Search LDC > Find "www" Go to the Search tab to see the results and find the line with: "http://www.minecraft.net/game/checkserver.jsp?user=" Right click on it > "Jump to Declaration" Now you should see the bytecode listed in the Editor tab. Find the line again and left click on it. Then right click > Edit Change "www" to "session" and click OK Menu File > Save as > save it as a jar file with a new name eg "Server_online.jar" Replace your existing server jar with the new edited online jar in your server and edit your server.properties file to have online-mode=true instead of false. Done!

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • OpenPods

    The Free and Open Source app for monitoring your AirPods on Android

    Project mention: Android app? | reddit.com/r/airpods | 2022-06-28

    haven't tried this as i don't own airpods, but it's free and open source and looks to do what you want it to https://github.com/adolfintel/OpenPods

  • Ghidra-Cpp-Class-Analyzer

    Ghidra C++ Class and Run Time Type Information Analyzer

  • skidfuscator-java-obfuscator

    Public proof-of-concept obfuscator using the MapleIR framework designed by cts & bibl

    Project mention: Free ZKM Alternative | reddit.com/r/javahelp | 2022-05-04

    If you want something a little strong with just the plain ZKM methods with better tree generations I had a buddy make it while back. (Nothing is configurable right now, Only downside until further updates) https://github.com/terminalsin/skidfuscator-java-obfuscator

  • jpsxdec

    jPSXdec: cross-platform PlayStation 1 audio and video converter

    Project mention: CD-i music | reddit.com/r/CDInteractive | 2022-07-21

    I saw many asking how to get music from CD-i games due to nostalgia or just because. Anyway, since this topic is not very well documented, I recently made a collection of pre-ripped audio files for such people. It's currently very small, consisting of only ten games so far, but I definitely plan to expand it in the future. Besides music, sound effects and voice clips are also included where possible. All the files are left in their original formats. You can easily play and convert these via jPSXdec (requires Java 8 or higher).

  • efiSeek

    Ghidra analyzer for UEFI firmware.

  • AndroidLibrary

    Android library to reveal or obfuscate strings and assets at runtime

    Project mention: Any good alternative to StringCare and Paranoid libraries, to obfuscate important keys | reddit.com/r/android_devs | 2021-12-05

    So far I've known just 2 libraries that do it (StringCare and Paranoid), but once every few versions I notice issues, either in building or that it won't work as it's supposed to.

  • WhatsappWeb4j

    Standalone fully-featured Whatsapp Multi Device Web API for Java and Kotlin

    Project mention: Java Snake | reddit.com/r/java | 2022-07-05

    I'd like to disagree. I'm an high school student myself and I am interested mostly in programming, but also in computer science. I have never studied anything in either fields at school so maybe my opinion here is limited. The first point I'd like to address is that, while the line between computer science and programming is sometimes very thin, this project clearly falls in the latter's territory. Furthermore, being a computer scientist or a software engineer doesn't excuse an individual from not following the coding practices that regulate a particular language. While the latter is a tool in both cases, it's important in my opinion to maximize its expressivity to get the job done as efficiently as possible. At least in my opinion this is very important to understand the difference between the various programming languages, build tools and everything else as, without following the tool's philosophy at heart, they start to look all the same very fast. Finally a computer scientist could have an interest in being a good programmer and vice versa which makes it trivial to start following good practices from the start. At least this is what I've always tried to do from my first project(https://github.com/Auties/MeteorShardSourceCode) to my last ones(https://github.com/Auties00/Reified https://github.com/Auties00/WhatsappWeb4j).

  • Deobfuscator

    Some deobfuscator for java lol (by narumii)

    Project mention: How to remove jar obfuscation (how not to get ratted && java decompiler sequel) | reddit.com/r/minecraftclients | 2022-07-29
  • SkidSuite

    A collection of java reverse engineering tools and informational links

    Project mention: An Introduction To Android Malware Reverse Engineering | reddit.com/r/ReverseEngineering | 2022-04-15

    There's some other useful Android reversal tools listed on: https://github.com/GenericException/SkidSuite/blob/master/android.md

  • ghidra-scripts

    A collection of my Ghidra scripts to facilitate reverse engineering and vulnerability research.

    Project mention: Create a win32 app that can run other windows app inside of it. any idea? | reddit.com/r/C_Programming | 2022-08-08

    Ghidra - A binary disassembly and debugging tool suite made by the NSA.

  • spice86

    Reverse engineer and rewrite real mode dos programs!

    Project mention: Systematic method to reverse engineer and rewrite DOS games | reddit.com/r/REGames | 2021-11-04

    The tool: https://github.com/kevinferrare/spice86

  • Ghidra-SegaSaturn-Loader

    A Sega Saturn loader for Ghidra

  • ruby-dragon

    Ruby, Kotlin, JShell, and Clojure support for Ghidra scripting and interactive sessions.

    Project mention: Ruby and Clojure Support in Ghidra | reddit.com/r/ghidra | 2021-08-30

    To that end, I've created the Ruby Dragon plugin to do just that. I've gotten it to a relatively stable point, and I think it's ready to share with anyone that prefers Ruby or Clojure to the default choices! Both an interactive console and scripts are supported, as well as running scripts via the headless analyzer.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-08-08.

Java Reverse Engineering related posts

Index

What are some of the best open-source Reverse Engineering projects in Java? This list will help you:

Project Stars
1 ghidra 33,718
2 Apktool 14,583
3 Recaf 4,117
4 simplify 4,006
5 fernflower 2,653
6 BinAbsInspector 1,164
7 JByteMod-Beta 729
8 OpenPods 603
9 Ghidra-Cpp-Class-Analyzer 498
10 skidfuscator-java-obfuscator 323
11 jpsxdec 318
12 efiSeek 225
13 AndroidLibrary 220
14 WhatsappWeb4j 198
15 Deobfuscator 188
16 SkidSuite 183
17 ghidra-scripts 90
18 spice86 52
19 Ghidra-SegaSaturn-Loader 29
20 ruby-dragon 13
Find remote jobs at our new job board 99remotejobs.com. There are 3 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com