Easy_vb
题目地址:Bugku——Easy_vb
解题
说句实话这道题很简单,要是单说找flag,可以说没什么技术含量。
首先拖进OD里,常规找一下字符串,然后成功拿到flag…
成功得到flag:flag{N3t_Rev_1s_E4ay}
进一步修改程序
我们运行程序会发现,”确定“这个按钮事件触发不了,原因就是我们输入的密码不正确,程序在这里进行了比较:
我们直接把比较的那个jnz跳转NOP掉就好了,然后在运行程序,就进入输入flag的界面了。
这里只有当你输入正确的flag时,程序才不会报错,这是输入错误的提示。
输入正确时:
现在我们要实现的效果就是,flag我们自己说了算,我们输入什么,flag就是什么。
首先定位到“Try again!”,然后向上翻看看有没有指令可以跳过它,这里有一条jmp,这个肯定不用管,说明在jmp与字符串之间有一个跳转。
找到一个可以跳过报错的je指令,我们直接NOP掉。
现在运行一下程序看看效果:
成功弹出我们自己定义的flag。