ciscn2023 flutterror writeup
安卓so文件逆向
0x1 分析lib.so文件
IDA打开 lib/arm64-v8a/libapp.so
看看有没有跟42比较大小的(检测输入长度是否与flag长度相同)
等待加载完成后 Alt + T
搜索 cmp
再 Ctrl + F
搜索#0x2a (即42) 发现还真有
0x2 函数分析
进入函数 F5 反汇编
观察到一个长度刚好为42的数组赋值
接下来程序大概逻辑: 遍历数组 每个数除以2 与0x66异或 再作比较
可以发现数组内全是偶数所以不会触发115行的条件
0x3 脚本
1 | l=[0,20,14,2,58,190,160,6,160,166,160,190,162,150,166,6,8,8,150,164,162, |