【简易破解】-玩玩破解,写给新人看(阶段练习1)-实践
本帖最后由 YMYS 于 2021-2-4 11:45 编辑破解心得分享:
有提示信息框练习:
1.先用字符串搜索“失败”“成功”定位到代码区没有可疑的跳转指令和窗口ID,F2下断点F8步入但找不到关键跳转位置和指令;断点取消另寻其他办法。
2.在搜索栏中看见了“请输入账号和密码”第三个可疑字符串,F2下断点并且运行不输入账号密码登录F8步入几步就运行不了了;
寻找字符串周围有发现下面有PUSH 52010001的窗口ID,再往下寻找有PUSH 5201000A,PUSH 52010C8E等 ID,猜测此处肯定有成功和失败的弹窗ID和弹窗call,接着找可疑跳转,往下五行就看见有个大的jmp跳转并且是之前F8没进入的地方:
用NOP填充重新运行程序(需要不输入账号密码进入断点,继续运行)发现会先弹出“请输入账号和密码”弹窗,确定后,再弹出“登陆失败弹窗”:
则此jmp跳转掉了“登陆失败”的弹窗call或者“请输入账号和密码”弹窗call,(这个jmp不是要修改的地方,修改回来,重新运行)就在这个跳转范围内寻找弹窗ID(此时寻找的是PUSH 5201****的ID并且前面要有PUSH 10001才符合弹窗ID的条件),往下寻找,发现了一个je条件跳转语句跳掉了一个弹窗ID并且跳掉了一个JMP跳转(此JMP跳转跳掉了接下来的另一个弹窗ID):
此时八九不离十就找到了成功和失败的弹窗ID,(这里分析了一下是不正确就跳转并执行失败弹窗call),将此je挑战NOP填充掉就行了。(还可以将EAX里的值换为1等等)。
我还尝试了其他办法:
1.(没运行时)用查找PUSH 10001找弹窗ID能很快找到关键位置并破解(有4个正好1,2个是);
2.MessageBoxA断点断不下来,用GetWindowTextA能端下来并一路F8过了几个retn(记住这里要运行输入账号密码登录才能进入登陆失败相关位置,不然找不到关键位置如窗口ID)就能到关键位置并破解;
3.登陆失败字符串附近无窗口ID应该是MessageBoxA函数无法拦截登录失败弹窗的原因;
提示未注册练习:
1.API断点设置中找不到SetWindowTextA函数就在查找-->当前模块中的名称-->打SETWIINDOWSTEXTA-->选中右击在每个参考上设置断点设置函数断点;
2.然后运行,输入账号密码登录F8步入返回到关键位置(不要继续F8了);
3.往上下寻找可疑跳转,发现上面有个je条件跳转跳转掉了几个pushID并且跳转到的地方上一行也是一个jmp跳转跳过了一个pushID,这个就是关键跳转,NOP掉就行了;
如有错误请指出,欢迎大家讨论!!! YMYS 发表于 2021-4-7 16:01
附近的PUSHID窗口是弹出成功失败的弹窗
看来不仔细看上面的内容.一直F8是没用的.改法也挺多.上面对比改1.或者JE改JNE都行.还有一个NOP tinaminem 发表于 2021-4-7 16:08
看来不仔细看上面的内容.一直F8是没用的.改法也挺多.上面对比改1.或者JE改JNE都行.还有一个NOP
是的是这样的 谢谢分享
谢谢分享 感谢楼主的分享! 感谢发布原创作品,吾爱破解论坛因你更精彩! 正是想问原作者的。。 这是破解密码的吧 VIP2021 发表于 2021-4-2 17:38
这是破解密码的吧
这是跳过注册的 实在愚钝,第二个破解如何分辨4023B9是关键位. tinaminem 发表于 2021-4-7 15:43
实在愚钝,第二个破解如何分辨4023B9是关键位.
附近的PUSHID窗口是弹出成功失败的弹窗
页:
[1]
2