LoRyu 发表于 2021-10-20 00:03

Java CrackMe

找到一个好像可以AntiDebug的码子,做了个CrackMe试试
Java8,有混淆
exe4j打包成exe

Ax王者 发表于 2021-10-23 21:59

1. exe4j 会将 jar 文件解包至 %temp%/e4jXXX.tmp_dirXXXXXXXXX 文件夹,然后执行。
2. 使用的是 ZelixKlass Master,版本应该在 13+,因为有 parameter obfuscation.
3. 对其进行反混淆后,可以得到如下简单的 Keygen.
import java.math.BigInteger;
import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

class Keygen {
    public static void main(String... args) throws NoSuchAlgorithmException {
      StringBuilder sb = new StringBuilder();
      sb.append(System.getProperty("os.name"))
          .append(System.getProperty("os.arch"))
          .append(System.getProperty("os.version"))
          .append(Runtime.getRuntime().availableProcessors())
          .append(System.getenv("PROCESSOR_IDENTIFIER"))
          .append(System.getenv("PROCESSOR_ARCHITECTURE"))
          .append(System.getenv("PROCESSOR_ARCHITEW6432"))
          .append(System.getenv("NUMBER_OF_PROCESSORS"));

      MessageDigest messageDigest = MessageDigest.getInstance("MD5");
      messageDigest.update(sb.toString().getBytes(StandardCharsets.UTF_8));
      System.out.println(new BigInteger(1, messageDigest.digest()).toString(16));
    }
}

阳光肥肥 发表于 2021-10-20 17:10

No jvm 是不是有点问题。。

LoRyu 发表于 2021-10-20 17:15

阳光肥肥 发表于 2021-10-20 17:10
No jvm 是不是有点问题。。

exe4j打包的应该没啥问题,确保电脑装了jre或者jdk就行了,如果你用od之类的可能会检测不到java环境,这个exe没啥,就是释放jar到temp文件夹那边

LoRyu 发表于 2021-10-20 17:18

阳光肥肥 发表于 2021-10-20 17:10
No jvm 是不是有点问题。。

去temp文件夹里面能找到jar本体,或者我等等传个jar本体出来吧

LoRyu 发表于 2021-10-20 17:40

阳光肥肥 发表于 2021-10-20 17:10
No jvm 是不是有点问题。。

jar本体
https://loryu.lanzoui.com/iJs6Ovkgeij

寻初之梦 发表于 2021-10-20 18:29

打不开。
#EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffd3f92fafa, pid=4088, tid=12528

# JRE version: OpenJDK Runtime Environment Temurin-16.0.2+7 (16.0.2+7) (build 16.0.2+7)
# Java VM: OpenJDK 64-Bit Server VM Temurin-16.0.2+7 (16.0.2+7, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
# Problematic frame:
# V

LoRyu 发表于 2021-10-20 20:15

寻初之梦 发表于 2021-10-20 18:29
打不开。
#EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffd3f92fafa, pid=4088, tid=12528
...

可能不支持java16,我用java8写的

Domado 发表于 2021-10-20 22:23

打不开,任务管理器里一闪而过

LoRyu 发表于 2021-10-20 23:10

Domado 发表于 2021-10-20 22:23
打不开,任务管理器里一闪而过

试试用java -jar开,看看报什么问题

qzhsjz 发表于 2021-10-21 10:16

LoRyu 发表于 2021-10-20 23:10
试试用java -jar开,看看报什么问题

是Java 8的?VS2022默认装了微软的Java 11环境,直接报错了。
页: [1] 2
查看完整版本: Java CrackMe