当我对我的应用程序进行模糊处理时,防病毒软件会为混淆的应用程序提供病毒警报。
我该怎么做才能避免这种情况?
我在Windows XP Professional上使用Visual Studio 2008和.NET Reactor 3.9.8.0。
Windows和应用程序是最新的,防病毒软件在运行完整扫描时什么也找不到。
编辑:Avast Antivirus发出警报。 MS Forefront没有。
编辑2:更改控制流混淆级别修复它。
答案 0 :(得分:2)
某些EXE压缩器/混淆器/其他工具被防病毒程序视为恶意软件,因为它们通常用于压缩/加密/隐藏病毒。尝试使用其他程序进行混淆。如果问题仍然存在,您还可以尝试稍微更改一下代码,也许您的一个代码模式看起来对防病毒程序是可疑的。
编辑:经过快速搜索后,我发现其他用户没有发现.NET Reactor的误报 - 您也可以尝试向EZIRIZ support报告问题 - 也许他们对此有更多的了解。答案 1 :(得分:1)
我遇到了同样的情况,这次是使用Avast和REACTOR 4.7.0。 取消选中控制流混淆无效。
这是NATIVE EXE文件选项(它注入WIN32启动代码以替换标准CLR启动代码)。报告给EZIRIZ和AVAST。
好奇的是,avast扫描并声明了exe文件(在取消激活Avast时获得)...
答案 2 :(得分:0)
使用一个反病毒或多个反病毒可以看到问题吗?您还可以将您的应用程序发送到病毒实验室,他们将尝试更新其签名,以便将来不再匹配。当然,如果世界上每个反病毒软件都将您的软件视为病毒,那么这就有问题了;)
答案 3 :(得分:0)
防止此类问题的可靠方法是使用商业代码签名证书对软件进行签名。防病毒引擎对此类签名文件的评价更高。如果您拥有证书,则可以在.NET Reactor中定义它。这样,.NET Reactor将在保护后自动对您的软件进行签名。
或者,您也可以向相应的反病毒软件供应商发送误报报告,他们通常会在48小时内正常更正签名数据库。