2014年4月10日

关于找不到CreateFile函数的地址的问题

摘要: 想找CreateFile函数的地址,将其hash值压入,却导致死循环,计算不出函数地址。准备放弃时,跟踪了其它程序,发现调用的是CreateFileA函数,而非CreateFile函数。网上搜索相关知识点,查到如下信息:事实上系统不存在什么CreateFile函数,只有CreateFileA和CrateFileW编译时根据项目配置是否使用unicode,来决定最终用的是CreateFileA还是CreatFileW函数CreateFileA是MBCS版本的,CreateFileW是Unicode版本的。在调用时把所有与字符串有关的参数用_T("")宏括起来,就不用管最终编译 阅读全文

posted @ 2014-04-10 18:47 小知识 阅读(445) 评论(0) 推荐(0)

利用pushfd/popfd检测虚拟机(cpu模拟器)

摘要: 执行popfd前:EFL = 00200202[ESP] = FFFFFAFF执行popfd后:EFL = 00244AD7不等于[ESP]中的FFFFFAFF,什么原因导致的呢?POPFD不是简单把[ESP]赋值给EFLAGS某些虚拟机(CPU模拟器)简单的把[ESP]值pop给了ELF,导致popfd后-》再pushfd-》再pop出来的值是相同的,实际如上,应该是不同的,popfd只对某些位有影响。这应该算是某些CPU模拟器的BUG. 阅读全文

posted @ 2014-04-10 08:32 小知识 阅读(630) 评论(0) 推荐(0)

反调试技巧总结-原理和实现(转载)

摘要: 原帖地址:http://bbs.pediy.com/showthread.php?t=70470一、 前言 前段学习反调试和vc,写了antidebug-tester,做个简单的总结,说明下实现原理和实现方法。 部分代码和参考资料来源:1、> hawking2、> Angeljyt3、http://... 阅读全文

posted @ 2014-04-10 08:29 小知识 阅读(1000) 评论(0) 推荐(0)

导航