好友
阅读权限10
听众
最后登录1970-1-1
|
本帖最后由 Brown1 于 2025-5-18 13:11 编辑
各位大哥,我今天收到一个软件,用来练手,是易语言做的程序,通过信息框断点返回再ctrl+a,轻松找到了验证位置
(信息框返回,上找跳转位置)
信息框call返回
跳转来自c58c40b4的cmp比较
比较字符串长度
将比较值改为0,然后继续运行
修改比较字符串
执行到该jmp后发现,跳转位置为ecx*4+58c4678,然后ecx来源于eax+4,也就是说寄存器ecx的最小值应该为0+4,ecx的最小值也就是4
关键jmp
ecx来源
分别将寄存器ecx的值改为4、6、7、8发现都会跳转到错误位置
网络链接被断开
卡密错误
卡密已到期
卡密被封停
当ecx的值为5时,则只会跳转一小行,并且当ecx=5时,也就是eax的值为1,我感觉比较符合正常出call的返回值
eax为5
将ecx的值改为5后,照常运行可以找到有“登陆成功字样”,并且可以正常弹出信息框
登陆成功字样
登陆成功信息框
出了几次call之后,我没有看到有异常的位置,然后程序一旦运行,则会直接闪退。。。这是存在二次验证还是什么原因啊大佬们,我一直没有找到解决办法
这是他的内存区段
内存区段
符号位置
内存符号
加密内存
地址好像也为动态的,每次运行后地址位置都不同,只能重新找
跪求大佬帮助,我碰到好多这种验证了,每次只能弹一个信息框,之后就会闪退,有没有什么解决办法么,他这个是二次验证还是我改的程序出问题了?
感谢大佬!!
文件下载地址:
https://wwvj.lanzoum.com/iIerY2wjy7xi
密码:ctsy |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|
|