使用OllyDbg从零开始Cracking概要1.docVIP

  • 27
  • 0
  • 约2.34万字
  • 约 79页
  • 2017-07-09 发布于湖北
  • 举报
使用OllyDbg从零开始Cracking概要1

第4章-汇编指令”无操作”,也就是说,它没有特殊的用途。例如,你用一个短指令来替换一个长指令的话,如果处理器没有错误,多余的空间将会被NOP填充。 适当数目的nop指令可以将其他指令完全替换掉。 下面使用OllyDbg重新载入CrueHeadа(CrackMe的作者)的CrackMe。 我们可以看到反汇编的源代码,如上图第一条指令是PUSH 0,占两个字节,在这条指令上面单击鼠标右键选择Assemble. 或者直接使用快捷键-空格键,在弹出窗口的编辑框中输入NOP。 写入NOP指令后单击Assemble按钮。 这里我们可以看到OD设计的非常智能,考虑到PUSH指令占两个字节,OD会使用两条NOP指令进行替换,而不是使用一条NOP进行替换。 现在,在原来PUSH 0的地方显示的两条NOP指令,单击F7,指令一条NOP指令,可以看到,这里只改变了EIP(保存了下一条要执行指令的地址)寄存器的值,并没有影响到其他寄存器,堆栈或者标志位。 现在我们需要在数据窗口查看这两个字节,它们的内存地址分别是401000和401001。 在数据窗口中,鼠标右键选择-“Go to”-“Expression”,输入你需要转到的地址。 这里我们需要输入401000。 红色突出显示的是刚刚修改过的字节。前两个是90,然后E8,FF和04,00,00。这是一个Ca

文档评论(0)

1亿VIP精品文档

相关文档