病毒扫描程序导致应用程序负载缓慢

时间:2016-06-29 06:26:51

标签: windows antivirus

我创建了一个C#应用程序,用于为客户端部署一组非常具体的应用程序。该应用程序包含根据客户端的请求在单个可执行文件中完整部署整个应用程序套件所需的所有资源 - 在嵌入之前压缩。

但是,此应用程序非常大(150mb),每次启动时,都会触发Windows Defender或客户端AV的病毒扫描。这导致加载时间过长,超过5分钟。

有没有办法签署或以其他方式将我的应用程序列入白名单,以便病毒扫描程序在加载时不会扫描它?当内容发生变化时,应用程序会在每个部署上更改其签名。我已经尝试将其所在的目录列入白名单,将文件路径列入白名单,但无论病毒扫描程序是否继续触发。

我已通过以下操作确认它是病毒扫描程序:

1)启动应用程序时,病毒扫描程序进程会消耗整个CPU核心

2)将Debugger.Launch()调用作为应用程序中的第一个LOC并不会被调用几分钟

2)禁用病毒扫描程序后,应用程序将在5秒内加载。

不幸的是,禁用病毒扫描程序不是客户端的选项。我在开发部署应用程序时在本地使用它,但是在客户端的机器上关闭它 - 甚至建议这样做也不会很好,并且有充分的理由。

1 个答案:

答案 0 :(得分:1)

AV行为并不罕见,因为您的应用程序出现了病毒的主要迹象:正在解压缩的压缩资源。 AV产品当然不知道您的程序是如何压缩的,所以它必须花费相当多的时间在解包时尝试多种方法来确定这些方法都不会产生有害的代码。

路径白名单不可靠;任何能够覆盖白名单可执行文件的病毒都会绕过AV。

我只是把问题放回客户端。他们要求一种相当不寻常的可执行形式,这就是完全 AV正在防范的内容。