攻防世界Mobile6 app1 XCTF详解

XCTF_app1

先安装看看

点击芝麻开门之后会弹出“年轻人不要耍小聪明噢”

这大概就能看懂是点击之后进行判断,那就直接去看JEB,看看判断条件是什么

  V1是输入的字符串,V2获取包信息(百度的),V3获取版本名(百度的),V4获取版本号(还是百度的)。剩下的就简单明了了,先判断输入的长度跟版本名长度是否相同,若不相同跳出,若相同继续判断。再循环判断输入的字符串V1的每一个字符是否都等于版本名(V3)与版本号(V4)的异或值相等。

  所以我们逆向要的就是输入的flag==版本名与版本号的异或

  百度看看获取版本名与版本号的方法,发现aapt工具,这个工具其实也挺常用的(指我第一次听说,但是用everything搜到了),在APK改之理(APKIDE)中就有集成

cmd cd到aapt所在路径,使用aapt dump badging 【apk路径】命令就可以获取相关信息了

versionCode就是版本号,versionName就是版本名,很简单就能获得这个的异或值

1 str = "X<cP[?PHNB<P?aj'"
2 for i in str:
3     sum = ord(i) ^ 15
4     print(chr(sum), end='')

猜你喜欢

转载自www.cnblogs.com/CimeLi/p/12286821.html