新手试炼160之acid burn
本帖最后由 feng100s 于 2017-4-3 18:30 编辑这个程序应该是160的第一个,说实话,太难了,对于菜鸟来说第一个相比第2、3个感觉难了好多啊。困扰了我很长时间。通过观察,作为练手用,需要解决3个问题。1.程序开始时的提示框。这个暂时没办到,回头补上,或者请大神。本程序提供了2个验证程序一个是serial/name一个是serial。直接方案2.od载入程序,查找—所有参考文本字符串。通过观察输入“try again”上图
通过观察发现有一个“good job dute”,这个很有意思,接着变化思路,开始查找“good job dute”,总共有2个,这时发现有个神奇的现象,有一个是“god job dute”,不知道这是大神的一时疏忽,还是故意在考验我们。这里我们选择good job dude,双击来到调试器。
3.记下位置0042fbd8。一定要记下,实在不行就用纸笔。
4.然后在调试区查找---常量,输入0042fbd8。来到0042fb0c
5.往上找能看到一个关键跳转。Jnz
6.通过观察如果跳转实现就来到了“try again”,我们的目标是不能跳转,怎么办呢?Nop掉 然后保存文件就OK了。保存程序验证。发现是serial的破解。
7.同理,找到下一个“god job dude”重复2-6就完美解决问题了。
求大神解答:关于刚开始的提示框,断点调试后,发现最终调用的是user32.XXX,这个好像是系统上的东西,改完之后不能保存,或者只能保存为.dll动态链接库文件,无法保存到可执行文件。。求大神赐教。或者有什么方法能去掉“Welcome to this Newbies crackme made by acid burn”的提示框。跪谢
补充:上回说到如何能够不让“welcome……”跳出来的想法,感谢大家的支持与指导。经过一段时间的考虑今天试了试,成功了,现在补上。1. od载入程序,然后一路F8,F2下断点。2. 来到42a1a9,发现call了一个<jmp.&user32.messageboxa>的地方。3. 因为我不知道怎么能不让他call出来,所以干脆讲call函数Nop掉。4. 然后保存程序,OK成功。图示如下
不让“welcome……”跳出来的方法好像会让注册成功也跳不出来 你可以从user32那的代码继续执行,看看到exe的代码位置在哪,应该实际代码在exe那。 不明觉厉啊 你从user32.XXX那儿继续回溯,一直到程序领空就可以改了,然后也可以保存了 来看看,学习了 顺便学习学习~~ 学习一下160 建议了解一下系统领空和用户领空的概念 建议了解一下系统领空和用户领空的概念 这不是最简单的那一类吗?我是新手,也给写个注册机出来了。
页:
[1]
2