java-deobfuscator / deobfuscator

The real deal
https://javadeobfuscator.com
Apache License 2.0
1.56k stars 290 forks source link

Unobfuscation is not possible. #891

Closed morry1023 closed 2 years ago

morry1023 commented 2 years ago

I did detect first because I do not know what obfuscator is.

[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Detecting known obfuscators
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - 
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - RuleSourceFileAttribute: Some obfuscators don't remove the SourceFile attribute by default. This information can be recovered, and is very useful
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator -    Found possible SourceFile attribute on com/ibm/icu/util/EasterRule: EasterHoliday.java
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Recommend transformers:
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - (Choose one transformer. If there are multiple, it's recommended to try the transformer listed first)
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator -    com.javadeobfuscator.deobfuscator.transformers.normalizer.SourceFileClassNormalizer
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - All detectors have been run. If you do not see anything listed, check if your file only contains name obfuscation.
[Thread-2] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Do note that some obfuscators do not have detectors.

SourceFileClassNormalizer and output the file, the software will not start. What should I do? I think my deobfuscation mesosot is wrong because I get a java.lang.ClassFormatError: incompatible magic value error and cannot start the software.

Janmm14 commented 2 years ago

The SourceFileClassNormalizer is not doing deobfuscation. It just renames classes to what their SourceFile attribute says they were named.

If, and only if, you can legally share the input jar (see #653 ) (or provide a link to it where it was shared by its creator for the general public), I or others could take a look at it - maybe it is not actually obfuscated, maybe its obfuscated with an unsupported obfuscator, maybe one detection algorithm didn't work like it should.

morry1023 commented 2 years ago

Thank you for your answer. Unfortunately it is a protected file and I will give up after reading the rules.