扫一扫关注公众号,长期致力于安全研究
前言:本文主要讲解CRC校验编写
目前有做逆向方面的,可以点主页联系方式,联系本人
可以一起搞一个逆向方面的团队~(10人左右)平时一起交流学习,共同进步
当一个程序被OD调试的时候,肯定会使用断点等指令操作,那么代码的编写就容易了,如果当发现程序内代码段被修改,则认为进行了调试操作
首先获取原程序代码段
//全局变量 int g_size = 0; int size = 0X4000;
int size = 0X4000;
int add = 0X411000;
for (int i = 0; i < size; i++){
byte b = 0;
ReadProcessMemory((HANDLE)-1, (LPVOID)add,&b,1,NULL);
g_size += b;
add++;
}
DWORD WINAPI Thread(LPVOID s1){
int address = 0X411000;
int temp = 0;
for (int i = 0; i < size; i++){
byte b = 0;
ReadProcessMemory((HANDLE)-1, (LPVOID)address, &b, 1, NULL);
temp += b;
address++;
}
if (temp != g_size){
MessageBox(NULL, L"不要破解了", L"标题", NULL);
}
return 0;
}
当编写完之后,程序是正常执行
进行断点操作
运行之后,可以发现成功拦截到了断点的操作
关注本公众号 回复 CRC 即可获取
下方扫一下扫,即可关注
本文始发于微信公众号(安全族):反调试之CRC校验编写
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论