启发式扫描是一种杀毒软件使用的技术,它通过识别和分析文件的特征和行为来检测潜在的恶意软件。启发式扫描不依赖于已知的病毒特征库,而是根据恶意软件通常的行为模式和特征来判断文件是否可能是恶意的。
启发式扫描的原理包括以下几个方面:
-
行为分析
-
特征分析
-
模式识别
平时的绕过方式中,签名,加资源。下面 创建一个快捷方式是方法之一
#include <windows.h>
#include <objbase.h>
#include <shobjidl.h>
#include <stdio.h>
// 创建快捷方式
HRESULT CreateLink(LPCWSTR lpszPathObj, LPCWSTR lpszPathLink, LPCWSTR lpszDesc)
{
HRESULT hres;
IShellLink* psl;
// 初始化COM库
CoInitialize(NULL);
// 创建IShellLink对象
hres = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, IID_IShellLinkW, (LPVOID*)&psl);
if (SUCCEEDED(hres))
{
IPersistFile* ppf;
// 设置目标路径
psl->SetPath(lpszPathObj);
// 设置描述
psl->SetDescription(lpszDesc);
// 保存快捷方式
hres = psl->QueryInterface(IID_IPersistFile, (LPVOID*)&ppf);
if (SUCCEEDED(hres))
{
hres = ppf->Save(lpszPathLink, TRUE);
ppf->Release();
}
psl->Release();
}
// 释放COM库
CoUninitialize();
return hres;
}
int main()
{
LPCWSTR lpszPathObj = L"C:\\Users\\Coriander\\Desktop\\Tools.exe";
LPCWSTR lpszPathLink = L"C:\\Tools.lnk";
LPCWSTR lpszDesc = L"Shortcut Description";
HRESULT hres = CreateLink(lpszPathObj, lpszPathLink, lpszDesc);
if (SUCCEEDED(hres))
{
// 快捷方式创建成功
// 可以进行其他操作
printf("Yes");
}
else
{
// 创建失败
// 可以处理错误
printf("No");
}
system("pause");
return 0;
}
们在编译的时候,需要注意一些配置文件。
1.2
3.
4.5.
6.