BUUCTF Re [Zer0pts2020]easy strcmp
打开程序,没有输入只有输出
于是使用IDA打开并远程调试
主函数内部是一个简单的字符串比较,那么zer0pts{********CENSORED********}是flag,试了下发现不是。看了其他函数,也没有啥异常,于是动态调试一下
动态调试发现存在strcmp存在障眼法
于是查看55F37FE006EA函数
接下来就是编写脚本了,脚本如下
enc = "********CENSORED********" m = [0x410A4335494A0942, 0x0B0EF2F50BE619F0, 0x4F0A3A064A35282B] import binascii flag = b'' for i in range(3): p = enc[i*8:(i+1)*8] a = binascii.b2a_hex(p.encode('ascii')[::-1]) b = binascii.a2b_hex(hex(int(a,16) + m[i])[2:])[::-1] flag += b print (flag)
[::-1]是因为小端排序
运行程序得到flag
flag{l3ts_m4k3_4_DETOUR_t0d4y}