-
-
[求助]逆向分析Java
-
发表于:
2007-5-10 10:26
10808
-
现有一个软件,很大,混合了好几种语言来编写各个组成部分。
我想找到它的注册算法。
千山万水,终于把目标定位到一个类的一个方法里面,但是似乎这个方法不能完全反编译。
代码如下:
public void save(byte abyte0[], byte abyte1[])
throws IOException
{
FileOutputStream fileoutputstream = new FileOutputStream(filename);
ObjectOutputStream objectoutputstream = new ObjectOutputStream(fileoutputstream);
objectoutputstream.writeObject(abyte0);
objectoutputstream.writeObject(abyte1);
fileoutputstream.close();
break MISSING_BLOCK_LABEL_49;
Exception exception;
exception;
fileoutputstream.close();
throw exception;
}
跟踪发现,输入注册码的时候,它会简单处理一下,然后写入文件中,而这里就是最后一步了。调用这个方法的外部方法中,通过判断是否抛出异常来判断注册是否成功。我试过,输入错误注册码是提示出错的。
但是,上面代码似乎没有明显的注册算法,不知道是不是因为break MISSING_BLOCK_LABEL_49;这一句。
麻烦各位了^_^
[课程]Android-CTF解题方法汇总!