2020网鼎杯 逆向青龙组 Joker
拉入 IDA,F5 反编译,有几处函数调用后不正常的栈指针,Alt + K 修改即可(即此函数或指令执行后栈指针的变化是多少)。
根据 Wrong 和 omg 两个函数,可以写出代码解出字符串( IDA 中选中字符串,Shift + E 即可拿出数据)
明显不是,继续向后看 encrypt 函数。这个函数是一串乱码,根据解码循环解码出正确的执行代码,拉程序进 X64dbg ,解码循环完成后 dump 出来,再拖进 IDA。
同样的步骤,前面解出来的字符串与后面解出的无关
明显差一点
与如何解出字符串无关,但给了5个字符,19+5 = 0x18 即 24.与输入字符数相同。最后一个字符是 } (0x7D)
第一次做会没有思路怎么解,做过了就有了。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步