本文为2015年MSC中第一题的writeup。
MSC_1 writeup
首先点我下载题目。反编译后找到关键方法check。
方法中代码较多时,一行行扣代码解密虽说可行,但是耗时太长。故需忽略此类代码,定位关键代码:从方法出口位置查找方法返回值进行逆推。
搜索 return,可以得到:
在这个goto标签下,有一个return v4,而且这个返回的位置唯一。所以,确定v4就是返回的变量,而goto__2c7e就是跳转的地方,接下来搜索2c7e。
这里是正确的返回地址,在比较位下断点动态调试,输入多组不同数据发现方法是input + 124750的线性关系,key为395926。