易语言软件反调试大法——六种反调试方法,总有一种适合“它”!
2012-09-15 11:05
429 查看
备注:写成子程序是为了方便在应用时插到代码段中,真正使用时请务必插入(最好分段插入)到程序代码中,否则几乎形同虚设。
.
.版本 2 .子程序 第一法_内存分配反调试, 逻辑型 .参数 最小值, 整数型 .参数 最大值, 整数型 .局部变量 min, 整数型 .局部变量 max, 整数型 GetProcessWorkingSetSize (GetCurrentProcess (), min, max) ' 输出调试文本 (min, max) 返回 (min ≠ 最小值 或 max ≠ 最大值) .子程序 第二法_子窗口反调试 EnumChildWindows (GetDesktopWindow (), 到整数 (&子窗口监控子程序), 0) .子程序 第三法_时间差反调试, 逻辑型 .局部变量 ctt, FILETIME .局部变量 ett, FILETIME .局部变量 ktt, FILETIME .局部变量 utt, FILETIME .局部变量 stt, SystemTime .局部变量 ntt, SystemTime .局部变量 qtt, 双精度小数型 GetLocalTime (ntt) GetProcessTimes (GetCurrentProcess (), ctt, ett, ktt, utt) FileTimeToSystemTime (ctt, stt) qtt = 到数值 (ntt.wSecond) × 1000 + ntt.wMilliseconds - 到数值 (stt.wSecond) × 1000 - stt.wMilliseconds 返回 (qtt > 300 或 qtt < 0) .子程序 第四法_启动信息反调试, 逻辑型 .局部变量 启动信息, STARTUPINFO GetStartupInfo (启动信息) 返回 (启动信息.dwX ≠ 0 或 启动信息.dwY ≠ 0 或 启动信息.dwXCountChars ≠ 0 或 启动信息.dwYCountChars ≠ 0 或 启动信息.dwFillAttribute ≠ 0 或 启动信息.dwXSize ≠ 0 或 启动信息.dwYSize ≠ 0) .子程序 第五法_时间间隔反调试, 逻辑型 返回 (GetTickCount () - GetTickCount () ≠ 0) .子程序 第六法_检测调试器反调试, 逻辑型 .如果真 (是否为调试版 ()) 返回 (假) .如果真结束 返回 (IsDebuggerPresent ()) .子程序 子窗口监控子程序, 整数型 .参数 hwnd, 整数型 .参数 lParam, 整数型 .局部变量 X, 整数型 .局部变量 sSave, 文本型 sSave = 取空白文本 (GetWindowTextLength (hwnd) + 1) GetWindowText (hwnd, sSave, 取文本长度 (sSave)) sSave = 删首尾空 (取文本左边 (sSave, 取文本长度 (sSave) - 1)) .计次循环首 (取文本长度 (sSave) - 2, X) .如果真 (到小写 (取文本中间 (sSave, X, 3)) = “cpu”) 信息框 (“子窗口监控” + #发现, 0, ) 返回 (1) .如果真结束 .计次循环尾 () .计次循环首 (取文本长度 (sSave) - 4, X) .如果真 (到小写 (取文本中间 (sSave, X, 5)) = “smart”) 信息框 (“子窗口监控” + #发现, 0, ) 返回 (1) .如果真结束 .计次循环尾 () 返回 (1)
相关文章推荐
- 易语言软件反调试大法——六种反调试方法,总有一种适合“它”!
- 一种通信设备免现场软件调试方法
- 一种全新的软件界面设计方法
- appcan 一种很方便的真机调试方法
- 小记:关于Keil软件调试(STM32)单片机设置断点时无法查看变量值的解决方法
- 任何一种软件开发方法学的架构、本质、精髓
- 一种全新的软件界面设计方法
- (方法二)Excel是最常用的办公软件。每个单元格都有唯一的地址表示 比如:第4列表示为:“D”,第255列表示为“IU”。 事实上,Excel提供了两种地址表示方法,还有一种表示法叫做R
- IOS 程序内部切换语言 的一种方法
- 一种适合懒人的JSON解析方法
- 一种便捷的Android软件版本更新方法
- [高级软件调试方法] SoftProbe调试方法及实现
- 六种方法确定哪个“aaS”适合你
- win7下通过update安装设备驱动软件的一种方法
- java properties 的六种读取方法 以及一种自己最方便的实现
- 想进国外大的软件公司的一种方法:躬耕于南阳
- 开源软件Blender 2.67b Win64多语言(含简体中文)版下载与设置转换中文方法
- 那种“软件”工程方法,更适合“雕塑”?
- 软件调试方法--小黄鸭调试法
- 想进国外大的软件公司的一种方法:躬耕于南阳