Exetools

Exetools (https://forum.exetools.com/index.php)
-   General Discussion (https://forum.exetools.com/forumdisplay.php?f=2)
-   -   How to go about RE Java Plugins for Intellij? (https://forum.exetools.com/showthread.php?t=19711)

byte23 11-23-2020 22:46

How to go about RE Java Plugins for Intellij?
 
Hello fellow Enthusiasts,

I want to ask a very straightforward question. All my RE has been limited to x86/x64 windows applications using the usual tools IDA and/or X64Dbg.

Now my question is, what is the best way to go about reverse-engineering Plugins for Intellij?

There are several Plugins I would like to modify, many have 30 Day-Trials for example and I can imagine there are possibilities there.

Im really not sure how to go about doing this. Do I need some sort of decompiler? Since the plugins run through Intellij this could be an additional barrier.

I will say sorry in advance if this is a beginners question

Many thanks

byte23 11-25-2020 20:09

No one? Really not looking for a complete step by step but rather general overview of which tools are needed for java programs (even more so plugins of one)

chessgod101 11-26-2020 00:04

If these plugins are coded in java, tools such as ByteCode Viewer, jd-gui, and DJ Java Decompiler are great for decompiling the code. If you need to modify it, tools such as Java Bytecode Editor(JBE or CJBE), DirtyJoe, or ReCaf can help you change byte code instructions.
It is fair to note that I have never used Intellij or any of its plugins, as I generally use Netbeans and Eclipse for the rare instance that I need to code in java, so I am commenting somewhat generically/hypothetically.

virus 12-04-2020 06:03

I would add "CFR - another java decompiler" to chessgod101's list. You'll probably need some deobfuscator (like hxxps://github.com/java-deobfuscator/deobfuscator) too.

CryptXor 12-07-2020 17:56

Quote:

Originally Posted by chessgod101 (Post 121727)
If these plugins are coded in java, tools such as ByteCode Viewer, jd-gui, and DJ Java Decompiler are great for decompiling the code. If you need to modify it, tools such as Java Bytecode Editor(JBE or CJBE), DirtyJoe, or ReCaf can help you change byte code instructions.
It is fair to note that I have never used Intellij or any of its plugins, as I generally use Netbeans and Eclipse for the rare instance that I need to code in java, so I am commenting somewhat generically/hypothetically.

ByteCode Viewer is sort of an AIO Java RE tool in that regard, and it infact includes the JD-GUI core as one of its decompilers. Its my go-to for anything Java related.

Something chessgod101 missed is a decent deobfuscator, since a lot of java is obfuscated: https://github.com/java-deobfuscator/deobfuscator

As far as reversing intellij plugins go, there are a few ways you can go about it, but generally just trace from the entry point (Main()) and you will very quickly find the licensing code you are wanting to modify.

alexei 12-15-2020 08:21

Quote:

Originally Posted by byte23 (Post 121697)
Hello fellow Enthusiasts,

I want to ask a very straightforward question. All my RE has been limited to x86/x64 windows applications using the usual tools IDA and/or X64Dbg.

Now my question is, what is the best way to go about reverse-engineering Plugins for Intellij?

There are several Plugins I would like to modify, many have 30 Day-Trials for example and I can imagine there are possibilities there.

Im really not sure how to go about doing this. Do I need some sort of decompiler? Since the plugins run through Intellij this could be an additional barrier.

I will say sorry in advance if this is a beginners question

Many thanks

These are the repos I commonly use:
https://github.com/TerriblePanda/JByteMod-Reborn
https://github.com/GraxCode/threadtear
https://github.com/java-deobfuscator/deobfuscator

they have their various strengths. DM if you need further resource(s).


All times are GMT +8. The time now is 17:16.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX