21xrx.com
2024-11-22 02:34:38 Friday
登录
文章检索 我的文章 写文章
如何在C++中利用延时避免360误杀?
2023-07-09 04:30:22 深夜i     --     --
C++ 延时 避免 360误杀

360安全卫士是一款常见的安全软件,但在开发过程中,经常会出现代码被误判为病毒或威胁。这时,我们可以通过延时的方式来规避这个问题。

首先,在编写代码时,应该清楚地了解360安全卫士的误杀原理。根据大多数病毒的行为,360安全卫士通常会判定一些常见的API调用和行为为病毒,例如CreateProcess,以及常见的内存操作,例如VirtualAlloc,VirtualProtect等。

为了规避这个问题,我们可以在这些API调用和内存操作前添加一些延时。

例如,在执行CreateProcess时,我们可以添加一些延时代码,例如:


Sleep(200);

CreateProcess(...);

这个操作会在调用CreateProcess之前等待200毫秒,以便让360安全卫士的扫描引擎有足够的时间来分析代码。

对于内存操作,我们也可以采用类似的方法:


Sleep(200);

VirtualAlloc(...);

这个操作会在调用VirtualAlloc之前等待200毫秒,以便让360安全卫士的扫描引擎有足够的时间来分析代码。同样,我们也可以通过这种方式来规避其他被误判的API调用和内存操作。

需要注意的是,我们不应该将延时时间设置得过长或过短。过长的延时会导致程序执行变慢,而过短的延时则可能无效,无法规避360安全卫士的误杀。

综上所述,在C++开发中,如果遇到360安全卫士误判的情况,我们可以通过在关键API调用和内存操作前添加适当的延时代码来规避这个问题。但延时时间应该设置得适当,以充分发挥规避效果。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复