魂斗罗
nynu-re-魂斗罗(2021年ISCCre题)
动态调试通过搜索字符串找到三个关键点
最后输出字符串的判断要自己向下找
程序启动后通过键入特定键盘按键会出现提示
eax通过键入按键获得一个值,通过cmp与ebx中储存的值进行比较
在赋值出和比较处断点
断点在比较处断下时转到ebx可以看到它将要比较的值
这时可以直接修改也可以不断测速按键得到正确字符
(按键和对应的值就不列举了自己试试吧doge)
输入wankkoree得到:
输入↑↑↓↓←→←→BABA得到:
给了个进度条可以用来要键入什么
测速可知f11是第一个按键
断下判断处的断点后转入ebx的内存窗口发现有些值是不能通过键盘键入的
这时就需要在判断前修改eax的值达到目的
不断的修改可以看到进度不断增长(改错一个值就得重来就很要命)
当进度条满了就会得到flag