shark恒破解笔记3-EAX决定胜负
2024-09-22 09:48:59
PEID查壳
od载入 输入假的注册码
查找出错字符串
往上查找是否有关键跳转和关键call
可以看到此处有个je跳转 实现了跳转,并且跳过了我们注册成功的地址 网上查找这个跳转的关键call,这个call很有可能就是判断一系列注册码是否正确然后返回一个代表是否注册的值,在关键call下断
上图可以看到是call后 比较了al的值 ,然后je判断是否要跳转,可以知道这个call返回来的al的值是关键。
这里我们可以把je改jmp或者直接nop掉,但是如果有多处调用这个关键call,这样就很麻烦
所以我们直接修改call的返回值
F7跟进关键函数后 直接改eax的值 然后retn跳出函数 这样al就是1了 je就就不会跳了
破解成功
最新文章
- Flexbox 自由的布局
- SharePoint 2013 托管导航及相关配置 <;二>;
- DevExpress控件使用经验总结
- C++ map插入(insert)数据返回值
- (转)Xcode 中设置部分文件ARC支持
- POJ3185 The Water Bowls(反转法or dfs 爆搜)
- 高精度快速幂(Java版)
- 启用 ASP.NET MVC 项目的 Edit and Continue
- 解决Ajax.BeginForm还是刷新页面的问题
- php使用iconv进行从utf-8转为gb2312字符编码出错或截断的解决方案
- JavaWeb之JSTL标签
- DevExpress控件的GridControl实现行多选
- kubernetes 微服务西游记(持续更新中...)
- 小组团队项目的NABCD分析
- 我的C#跨平台之旅(二):开发最为简单的REST API
- C++内存读写例子
- 通过 sass-resources-loader 全局注册 Sass/Less 变量
- 新版本macos无法安装mysql-python包
- Shell脚本字体颜色
- 放弃Dubbo,选择最流行的Spring Cloud微服务架构实践与经验总结
热门文章
- 3、循环链表(java实现)
- Webdriver元素定位的方法
- mybatis if判断两个值是否相等存在的坑啊
- 关于mock
- 【深入学习MySQL】MySQL的索引为什么使用B+树?
- [Linux] Linux下undefined reference to ‘pthread_create’问题解决
- [Linux] linux下vim对于意外退出的文档的再次开启
- RabbitMQ的六种工作模式总结
- Vue.js+vue-element搭建属于自己的后台管理模板:Vue.js快速入门(二)
- Spring 梳理 - AOP那些学术概念—通知、增强处理连接点(JoinPoint)切面(Aspect)