crackme杂记 004

创建窗口函数: CreatWindowsExA,有时候想要找信息窗口找不到的话可以通过这个函数查找。

花指令:花指令就是类似于jmp,call,ret的指令用来影响我们正常进行反汇编,比如使用花指令的话,IDA就无法正常编译汇编代码。
举例:
在这里插入图片描述
如上图,我们自己写了一个裸函数,可以看到,先写一个jmp Lable,跳转到下面的Lable函数,然后通过 _emit 0e8h 写入一个e8,但是我们知道,e8是call对应的硬编码,所以od就会认为这是一个call ,但是call后面都会跟着一个地址啊,所以od就会将后面的代码理解成call的地址,如下图
在这里插入图片描述
但是花指令并不能影响程序的运行,因为花指令骗得只是反汇编工具,不如上面的jmp,程序运行的时候该怎么跳就怎么跳,(所以我们设计花指令的思路应该是构造一个恒成立的跳转,然后跳转中间插入无效的代码)我们在调试程序的时候碰到这种情况的话,可以直接将跳转代码的位置
与跳转想要跳转的位置之间的代码直接nop掉就好了,所以说,花指令防的住静态调试,但并防不住静态调试。
那么花指令远离如上,我们可以一个一个去nop,但是如果花指令特别多怎么办,可以使用插件。
但是这样一个一个nop难免会使代码的可读性变低,我们还有其他方法:
在这里插入图片描述
然后重新右键分析就可以了。效果如下图
在这里插入图片描述

od快捷键:
ctrl+f9 执行到函数返回

ida操作基础:

如果代码是一个函数,IDA会将其命名为sub_xxxxx,所以有时候我们遇到loc开头的东西的话说明不是一个函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值