学习:反调试之检测类名与标题名

Posted zpchcbd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习:反调试之检测类名与标题名相关的知识,希望对你有一定的参考价值。

反调试之检测类名与标题名:通过FindWindow函数来进行反调试

HWND FindWindowA(
  LPCSTR lpClassName,
  LPCSTR lpWindowName
);

返回值
类型:类型:HWND

如果函数成功,则返回值是具有指定类名和窗口名的窗口的句柄。

如果函数失败,则返回值为NULL。要获取扩展的错误信息,请调用GetLastError。

1、这里自己就不重复F9了,还是通过GetProcAddress来间接的给主要的反调试函数下断点,如下
技术图片

2、然后F9进行,首先到的是CreateToolhelp32Snapshot,把当前的所有进程都才能到一个句柄中,然后进行返回

3、紧接着是Process32First,在返回句柄中取出第一个条目放到缓冲区
技术图片

4、接着就是FindWindow函数断点
技术图片

5、然后执行到返回,把当前的OD的句柄值放进eax中
技术图片

6、如果判断成功的话 那么直接ExitProcess
技术图片


反调试之检测类名与标题名的绕过:FindWindow接收两个参数,上面我们可以看到传入的参数为类名,标题名不进行判断
技术图片

直接在判断比较的时候 将ZF标志位置1不进行跳转就可以成功绕过了

技术图片

技术图片

以上是关于学习:反调试之检测类名与标题名的主要内容,如果未能解决你的问题,请参考以下文章

浅谈android反调试之 转发端口

Android签名验证与反调试机制的对抗技术

Android签名验证与反调试机制的对抗技术

JavaScript奇淫技巧:反调试

Android逆向案例:干掉梆梆加固免费版的反调试检测

Android逆向案例:干掉梆梆加固免费版的反调试检测