java-deobfuscator / deobfuscator

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

Deobfuscation error #980

Open Midaco-YT opened 9 months ago

Midaco-YT commented 9 months ago

Hello, trying to deobf I had an error here Microsoft Windows [version 10.0.19045.3570] (c) Microsoft Corporation. Tous droits réservés.

C:\Users\trist\Documents\deob>java -jar deobfuscator.jar --config config.yml [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Loading classpath [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Loading input [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Computing callers [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Transforming [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Running com.javadeobfuscator.deobfuscator.transformers.stringer.v3_1.StringEncryptionTransformer java.lang.reflect.InaccessibleObjectException: Unable to make field private java.util.List java.lang.Throwable.suppressedExceptions accessible: module java.base does not "opens java.lang" to unnamed module @dbd940d at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178) at java.base/java.lang.reflect.Field.setAccessible(Field.java:172) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1788) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvocationInstruction.execute(InvocationInstruction.java:96) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.VirtualMachine.createMainThread(VirtualMachine.java:635) at com.javadeobfuscator.javavm.VirtualMachine.fullInitialization(VirtualMachine.java:135) at com.javadeobfuscator.deobfuscator.utils.TransformerHelper.newVirtualMachine(TransformerHelper.java:270) at com.javadeobfuscator.deobfuscator.transformers.stringer.v3_1.StringEncryptionTransformer.transform(StringEncryptionTransformer.java:39) at com.javadeobfuscator.deobfuscator.Deobfuscator.runFromConfig(Deobfuscator.java:477) at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:434) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:106) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:99) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.main(DeobfuscatorMain.java:36) java.lang.reflect.InaccessibleObjectException: Unable to make field private java.util.List java.lang.Throwable.suppressedExceptions accessible: module java.base does not "opens java.lang" to unnamed module @dbd940d at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178) at java.base/java.lang.reflect.Field.setAccessible(Field.java:172) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1788) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.VirtualMachine.createMainThread(VirtualMachine.java:635) at com.javadeobfuscator.javavm.VirtualMachine.fullInitialization(VirtualMachine.java:135) at com.javadeobfuscator.deobfuscator.utils.TransformerHelper.newVirtualMachine(TransformerHelper.java:270) at com.javadeobfuscator.deobfuscator.transformers.stringer.v3_1.StringEncryptionTransformer.transform(StringEncryptionTransformer.java:39) at com.javadeobfuscator.deobfuscator.Deobfuscator.runFromConfig(Deobfuscator.java:477) at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:434) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:106) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:99) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.main(DeobfuscatorMain.java:36) java.lang.reflect.InaccessibleObjectException: Unable to make field private java.util.List java.lang.Throwable.suppressedExceptions accessible: module java.base does not "opens java.lang" to unnamed module @dbd940d at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178) at java.base/java.lang.reflect.Field.setAccessible(Field.java:172) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1788) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.VirtualMachine.createMainThread(VirtualMachine.java:635) at com.javadeobfuscator.javavm.VirtualMachine.fullInitialization(VirtualMachine.java:135) at com.javadeobfuscator.deobfuscator.utils.TransformerHelper.newVirtualMachine(TransformerHelper.java:270) at com.javadeobfuscator.deobfuscator.transformers.stringer.v3_1.StringEncryptionTransformer.transform(StringEncryptionTransformer.java:39) at com.javadeobfuscator.deobfuscator.Deobfuscator.runFromConfig(Deobfuscator.java:477) at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:434) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:106) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:99) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.main(DeobfuscatorMain.java:36) java.lang.reflect.InaccessibleObjectException: Unable to make field private java.util.List java.lang.Throwable.suppressedExceptions accessible: module java.base does not "opens java.lang" to unnamed module @dbd940d at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178) at java.base/java.lang.reflect.Field.setAccessible(Field.java:172) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1788) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.VirtualMachine.createMainThread(VirtualMachine.java:635) at com.javadeobfuscator.javavm.VirtualMachine.fullInitialization(VirtualMachine.java:135) at com.javadeobfuscator.deobfuscator.utils.TransformerHelper.newVirtualMachine(TransformerHelper.java:270) at com.javadeobfuscator.deobfuscator.transformers.stringer.v3_1.StringEncryptionTransformer.transform(StringEncryptionTransformer.java:39) at com.javadeobfuscator.deobfuscator.Deobfuscator.runFromConfig(Deobfuscator.java:477) at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:434) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:106) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:99) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.main(DeobfuscatorMain.java:36)

Deobfuscation failed. Please open a ticket on GitHub and provide the following error: java.lang.reflect.InaccessibleObjectException: Unable to make private native void java.lang.Thread.setPriority0(int) accessible: module java.base does not "opens java.lang" to unnamed module @dbd940d at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) at com.javadeobfuscator.javavm.oops.ThreadOop.setPriority(ThreadOop.java:100) at com.javadeobfuscator.javavm.nativeimpls.java_lang_Thread.lambda$registerNatives$1(java_lang_Thread.java:39) at com.javadeobfuscator.javavm.hooks.HookGenerator.lambda$generateUnknownHandlingVoidHook$1(HookGenerator.java:64) at com.javadeobfuscator.javavm.hooks.HookedMethod.lambda$bind$0(HookedMethod.java:56) at com.javadeobfuscator.javavm.hooks.HookedMethod.execute(HookedMethod.java:84) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1191) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvocationInstruction.execute(InvocationInstruction.java:96) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.instructions.InvokeSpecialInstruction.execute(InvokeSpecialInstruction.java:84) at com.javadeobfuscator.javavm.VirtualMachine.execute(VirtualMachine.java:1265) at com.javadeobfuscator.javavm.VirtualMachine.internalExecute(VirtualMachine.java:1196) at com.javadeobfuscator.javavm.VirtualMachine.createMainThread(VirtualMachine.java:635) at com.javadeobfuscator.javavm.VirtualMachine.fullInitialization(VirtualMachine.java:135) at com.javadeobfuscator.deobfuscator.utils.TransformerHelper.newVirtualMachine(TransformerHelper.java:270) at com.javadeobfuscator.deobfuscator.transformers.stringer.v3_1.StringEncryptionTransformer.transform(StringEncryptionTransformer.java:39) at com.javadeobfuscator.deobfuscator.Deobfuscator.runFromConfig(Deobfuscator.java:477) at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:434) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:106) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:99) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.main(DeobfuscatorMain.java:36)

C:\Users\trist\Documents\deob>

my config.yml

input: Sele.jar output: Sele-deobf.jar transformers:

  • com.javadeobfuscator.deobfuscator.transformers.stringer.v3_1.StringEncryptionTransformer
  • com.javadeobfuscator.deobfuscator.transformers.stringer.v3.InvokedynamicTransformer
  • com.javadeobfuscator.deobfuscator.transformers.stringer.invokedynamic.Invokedynamic1Transformer
  • com.javadeobfuscator.deobfuscator.transformers.stringer.invokedynamic.Invokedynamic2Transformer
  • com.javadeobfuscator.deobfuscator.transformers.stringer.v3.HideAccessTransformer
  • com.javadeobfuscator.deobfuscator.transformers.stringer.v3.CleanupTransformer
  • com.javadeobfuscator.deobfuscator.transformers.normalizer.SourceFileClassNormalizer

libraries:

  • libs path:
    • C:/Program Files/Java/jre-1.8/lib/rt.jar

please can you help me

Janmm14 commented 9 months ago

do not throw all transformers on a jar. for stringer, the order is important and first you should try the transformers not in sub-packages.

Midaco-YT commented 9 months ago

oh okay, can you tell me which transformers will be used and in what order please?

Midaco-YT commented 9 months ago

I did it all over again by stringer.StringEncryptionTransformer then I tried stringer.HideAccessObfuscationTransformer but I had this error

C:\Users\trist\Documents\deob>java -jar deobfuscator.jar --config config.yml [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Loading classpath [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Loading input [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Computing callers [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Transforming [main] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Running com.javadeobfuscator.deobfuscator.transformers.stringer.HideAccessObfuscationTransformer [Stringer] [HideAccessTransformer] Starting [Stringer] [HideAccessTransformer] Found 96 decryptors

Deobfuscation failed. Please open a ticket on GitHub and provide the following error: com.javadeobfuscator.deobfuscator.executor.exceptions.NoSuchMethodHandlerException: Could not find invoker for fr/sele/selerium/selerium$Constants e(Ljava/lang/Object;I)Ljava/lang/String; @ fr/sele/selerium/tp ()V at com.javadeobfuscator.deobfuscator.executor.MethodExecutor.execute(MethodExecutor.java:1407) at com.javadeobfuscator.deobfuscator.executor.MethodExecutor.execute(MethodExecutor.java:78) at com.javadeobfuscator.deobfuscator.transformers.stringer.HideAccessObfuscationTransformer.lambda$0(HideAccessObfuscationTransformer.java:121) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at com.javadeobfuscator.deobfuscator.transformers.stringer.HideAccessObfuscationTransformer.transform(HideAccessObfuscationTransformer.java:117) at com.javadeobfuscator.deobfuscator.Deobfuscator.runFromConfig(Deobfuscator.java:382) at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:339) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:120) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:113) at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.main(DeobfuscatorMain.java:50)

C:\Users\trist\Documents\deob>

Midaco-YT commented 9 months ago

another question which transformater uses to change the class name as "iiiIIiIiiiII" for obfuscation by allatori

Janmm14 commented 9 months ago

you need to try find the correct order of stringer transformers yourself. only help is: https://github.com/java-deobfuscator/deobfuscator/blob/master/commonerrors/Stringer.md

Midaco-YT commented 9 months ago

I tried all the transformers and the only one that works is him stringer.StringEncryptionTransformer after him I can’t use any stringer

Janmm14 commented 9 months ago

Thats unfortunate then, but this project is not being continued for now as there are not enough people to stay ahead/on par with obfuscators. Its existence over the active years has just triggered the obfuscations to get much more nasty.