当前位置: 首页 > news >正文

现在主流网站用什么做的宁波高端网站建设公司

现在主流网站用什么做的,宁波高端网站建设公司,wordpress好用的编辑器,佛山营销网站建设制作CRC校验技术是用于检测数据传输或存储过程中是否出现了错误的一种方法,校验算法可以通过计算应用与数据的循环冗余校验(CRC)检验值来检测任何数据损坏。通过运用本校验技术我们可以实现对特定内存区域以及磁盘文件进行完整性检测,…

CRC校验技术是用于检测数据传输或存储过程中是否出现了错误的一种方法,校验算法可以通过计算应用与数据的循环冗余校验(CRC)检验值来检测任何数据损坏。通过运用本校验技术我们可以实现对特定内存区域以及磁盘文件进行完整性检测,并以此来判定特定程序内存是否发生了变化,如果发生变化则拒绝执行,通过此种方法来保护内存或磁盘文件不会被非法篡改。总之,内存和磁盘中的校验技术都是用于确保数据和程序的完整性和安全性的重要技术。

磁盘CRC(循环冗余校验)用于检测磁盘数据的完整性,一般而言某些木马专杀工具同样会用到磁盘CRC特征校验技术,该技术的实现原理与内存验证原理完全一致,针对磁盘的验证同样很简单,但此处我们需要将计算到的CRC32值存储到PE文件自身中,通常我们可以存储到PE文件的前一个DWORD的位置上,程序运行后对比这个值,来判断程序是否被打过补丁,如果打过直接结束掉。

// 检查磁盘完整性
BOOL CalculateDiskCRC32()
{char szFileName[MAX_PATH] = { 0 };char *pBuffer;DWORD pNumberOfBytesRead;int FileSize = 0;// 获取自身文件,并打开文件GetModuleFileName(0, szFileName, MAX_PATH);HANDLE hFile = CreateFile(szFileName, GENERIC_READ, 1, 0, 3, FILE_ATTRIBUTE_NORMAL, 0);if (hFile == INVALID_HANDLE_VALUE){return TRUE;}// 取文件长度FileSize = GetFileSize(hFile, 0);pBuffer = new char[FileSize];// 读取文件到内存ReadFile(hFile, pBuffer, FileSize, &pNumberOfBytesRead, 0);CloseHandle(hFile);PIMAGE_DOS_HEADER pDosHeader = NULL;PIMAGE_NT_HEADERS32 pNtHeader = NULL;pDosHeader = (PIMAGE_DOS_HEADER)pBuffer;// 获取到NT头pNtHeader = (PIMAGE_NT_HEADERS32)((DWORD)pDosHeader + pDosHeader->e_lfanew);// 定位到PE文件头前4字节处DWORD OriginalCRC32 = *(DWORD *)((DWORD)pNtHeader - 4);printf("[*] 读出节表值 = %x \n", OriginalCRC32);// 我们只需要计算PE结构的CRC32值,不需要计算DOS头FileSize = FileSize - DWORD(pDosHeader->e_lfanew);DWORD CheckCRC32 = CRC32((BYTE*)(pBuffer + pDosHeader->e_lfanew), FileSize);printf("[+] 计算CRC32 = %x \n", CheckCRC32);if (CheckCRC32 == OriginalCRC32){return FALSE;}else{return TRUE;}return TRUE;
}int main(int argc, char* argv[])
{BOOL ref = CalculateDiskCRC32();if (ref == TRUE){printf("[-] 程序已被修改 \n");}else{printf("[+] 程序正常 \n");}system("pause");return 0;
}

首先读者运行上述程序,则程序会输出当前的CRC32值be63ac8b我们记下这个HASH值,如下图所示;

并将此值替换到如下图中的黄色位置,当程序运行后会读取该区域内的数据,并与动态计算的CRC32值进行计算,最终判断是否被修改,如下图所示;

通过CRC32数据对比并遍历磁盘文件,我们可以实现一个简单的特征定位查杀程序,用于专门定位某些特殊的程序,如下是修改后的代码片段;

// 计算文件CRC过程
BOOL CalcCRC32(char *FilePath)
{// 打开文件HANDLE hFile = CreateFile(FilePath, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);if (hFile == INVALID_HANDLE_VALUE){return FALSE;}// 获取文件大小DWORD dwSize = GetFileSize(hFile, NULL);if (dwSize == 0xFFFFFFFF){return FALSE;}// 分配内存BYTE *pFile = (BYTE*)malloc(dwSize);if (pFile == NULL){return FALSE;}// 读取内存DWORD dwNum = 0;ReadFile(hFile, pFile, dwSize, &dwNum, NULL);// 计算CRC32DWORD dwCRC32 = CRC32(pFile, dwSize);if (pFile != NULL){free(pFile);pFile = NULL;}CloseHandle(hFile);return dwCRC32;
}int main(int argc, char* argv[])
{WIN32_FIND_DATA stFindFile;HANDLE hFindFile;char *szFilter = "*.exe";      // 筛选所有的.exe结尾的文件char szFindFile[MAX_PATH];     // 保存欲检测程序的路径char szSearch[MAX_PATH];       // 保存完整的筛选路径int ret = 0;                   // 搜索状态返回值lstrcpy(szFindFile, "D:\\");   // 搜索D盘目录下的所有exe结尾的文件lstrcpy(szSearch, "D:\\");lstrcat(szSearch, szFilter);DWORD dwTmpCRC32;hFindFile = FindFirstFile(szSearch, &stFindFile);if (hFindFile != INVALID_HANDLE_VALUE){do{lstrcat(szFindFile, stFindFile.cFileName);dwTmpCRC32 = CalcCRC32(szFindFile);// 比较判断if (dwTmpCRC32 == 0xbe63ac8b){printf("[*] CRC32 = %x 发现病毒 %s \n", dwTmpCRC32, szFindFile);}else{printf("[-] CRC32 = %x 正常程序 %s \n", dwTmpCRC32, szFindFile);}// 删除程序名称只保留"C:\"szFindFile[3] = '\0';ret = FindNextFile(hFindFile, &stFindFile);} while (ret != 0);}FindClose(hFindFile);system("pause");return 0;
}

运行程序输出效果如下图所示;

本文作者: 王瑞
本文链接: https://www.lyshark.com/post/7a9a55f0.html
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

http://www.yayakq.cn/news/787052/

相关文章:

  • 做网站的公司主要是干啥怎么给网站添加代码
  • 域名购买网站有哪些做思维导图的在线网站
  • 怎样做淘宝客网站不关站备案wordpress
  • 网站做备案WordPress的站内地图
  • 网站 关于我们 模板2022年楼市最新政策
  • 做教育app的网站有哪些内容金融互助平台网站制作
  • 佛山企业网站建设特色网站自己可以备案吗
  • 福州网站建设电话图片制作的软件有哪些
  • 网站短信验证怎么做的湖南铁军工程建设有限公司网站
  • 网站建设贵阳静态网站策划书
  • 安康做网站哪家好项目之家app
  • 学校网站建设注意点网站建设系统服务
  • 网站成功案例分析如何先做网站再绑定域名
  • 网站解析怎么设置做网站找那家公司好
  • 做网站需要交接什么表白网页制作软件手机版
  • 国内做外贸的网站乐山住房和城乡建设厅网站
  • 特效素材免费下载网站wordpress点击文字弹窗
  • 制作高端网站效果怎么样中山商城型网站建设
  • 长沙网站建设开发律师网络推广
  • 互联网项目有哪些可做天水网站seo
  • 遂宁市网站建设手机主题制作软件
  • 用了采集站域名做网站武安市网站建设费用
  • 网站工商标识做网站的公司负责工商注册是什么意思
  • 澄海玩具网站建设公司抖音带运营公司
  • 做原型的网站网络维护管理
  • 学习建设网站需要多久四川建设厅网站首页
  • 网站设计中超链接怎么做做有色研究的网站
  • 网站建设个人网银网站开发需要什么步骤
  • 彩票的网站怎么做wordpass建设网站流程
  • 六安做网站word上下页边距怎么设置