1625-5 王子昂 总结《2017年11月30日》 【连续第426天总结】
A. JarvisOJ-Re-Fibonacci
B.
首先运行,提示
来让我们玩一个数列游戏:
a[0]=0,a[1]=1
a[2]=1,a[3]=2
a[4]=3,a[5]=5
…………..
请计算a[100000000000000]:
刚开始还以为是通过什么算法做出来,准备去百度裴波那契数列的算法,想了一下这是逆向题,还是乖乖来逆吧
拖入IDA,发现没有上述字符串出现,也没有加壳,那这些字符哪来的呢
翻了一圈字符串,发现了这些
有不少java的特征字符串,又看到了jar2exe这个程序的出现
那看来是jar2exe打包的程序咯
jar2exe将java和jvm打包生成exe,从而可以在没有JAVA的机器上直接运行
原理是通过JNI的接口,创建JVM来执行封装的java代码
与exe4j将jar导出生成临时文件不同,jar2exe是在内部执行的,因此无法直接找到临时文件来反编译
不过归根到底它还是java,就意味着仍然是通过JVM来执行