Zelix KlassMaster 是一款Java混乱器,其保护功能非常强大,但是网上只有其试用版本可一下在,而且还屏蔽了中国的IP地址,只能通过代理服务器下在。相当不爽。
前一阵再看雪论坛中舵手兄,提供了其最新的试用版本。因为以前曾经想研究一下其工作方式,但是立刻出现过期对话框。所以就想针对这款混乱器进行以下分析。
针对一个软件来说找到他的字符串信息可以有助于理解分析。所以就分析了一下Zelix KlassMaster(简称ZKM)得字符串加密方式。感觉像一个综合体,比如含有Smokescreen的随机密钥方式,字符串使用数组存储,同时又增加了多个解密方法同时使用的形势,增加了保护的强度。
其字符串解密(加密)方式类似如下代码
设有一个类A ,其中含有两个字符串: "Hello" , "World"
那么生成的类可能有下列形势
public class A{
public static void main(String... args){
System.out.println(z(z(A(A(B(B(C(C(D(D(E(E(F(F(G(G(H(H("....."))))))))))); // 其中的内容省略括号为座匹配
System.out.println(z(z(A(A(B(B(C(C(D(D(E(E(F(F(G(G(H(H("....."))))))))))); // 同上
}
private static char[] z(String s){
}
private static String z(char[] ch