能力值:
( LV2,RANK:10 )
|
-
-
2 楼
第二题 writeup
将APK进行反编译,可以找到判断输入结果的位置在Ch.java的ch方法中。
运行AliCrackme_2,在ch函数上添加断点,可以发现调用函数位置为so中的74F09DDC,输入的字符串作为函数的第一个参数。
之后在函数跳转到74F08DE0中,会将输入的字符串会诸位与下标相加。并跳转到74F084A4
在跳转到的位置,函数会将字符串与长度为16的数组进行相加,然后跳转到74F08944
在跳转位置发现程序执行了密钥为128位的加密操作,之后结果会与一个128位的数组作比较。
根据函数的加密方式猜测加密函数可能为AES算法或变体。
将提取到的密钥和比较的字符串代入到AES的解密函数中,并与第3步中的数组相减得到输出的结果为kboloy0
输入AliCrackme_2中,运行通过。
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
第一题 writeup
反编译程序,发现判断函数为Check.java的check方法。
查看check方法的返回位置,共有三处。在三个位置添加Log输出,发现实际运行的位置应为v8 % 1000000 + 124750 == v10这一步判断。
进一步输出v8和v10的结果,发现v10的值为520676,v8的值和输入的值相同。所以推断答案为395926
输入到AliCrackme_1,通过
|
能力值:
( LV3,RANK:20 )
|
-
-
4 楼
就这么放弃了么 兄台。。。。
一起玩玩第三题吧
qq群:456853837
|
|
|