160个CrackMe破解 No.1

首先观察程序的结构


查壳后并未发现有壳


接下来OD载入开始你的操作

最先的是一个nag窗口  所以直接命令行BP MessageBoxA

开始运行程序,程序停在了MessageBoxA中



点击nag窗口


直接Nop后发现程序奔溃了   深入了解后发现nop方法并不能达到效果 所以在调用窗户处执行到返回 看有没有关键跳转


并未发现再次执行到返回


还是未发现再执行到返回


找到了nag窗口的关键跳 程序在此处判断了程序是否第一次运行程序 如果是则不跳转 否则跳转不显示nag窗口



随意输入然后check弹窗处暂停OD可查看OD窗口中程序的句柄处找到调用 也可以工具栏中K查看事件调用的进程


也可一直执行到返回找到关键跳

找到到关键判断call  cmp中hello Dude


接下来继续解决最后一个问题继续使用上面的方法找到关键call和 关键跳转


解决之 完工!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,292评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,935评论 25 709
  • 网上看了一大堆,七零八碎的凑到一起的 1:ZwSetInformationThread,该函数可以移除调试线程,遗...
    Fa1se003阅读 5,386评论 1 2
  • 拿起电话又放下, 放下电话又拿起。 妈妈肯定也如此, 如此妈妈想儿女。 妈妈去姐家才一个月,我就想她了。因此,妈想...
    旖旎i阅读 1,508评论 2 9