【发布时间】:2021-08-08 14:43:27
【问题描述】:
Windows Defender 通常将我的程序作为病毒隔离,现在我发现了其中一种情况:在启动文件夹中创建快捷方式。
我希望程序可以在电脑启动时自动启动,所以我在里面创建了一个快捷方式
%APPDATA%\Microsoft\Windows\Start Menu\Programs\StartUp
然后由于Behavior Win32/Persistence.A!ml,Windows Defender 迅速隔离了该程序。
我不知道如何防止这种情况发生,我尝试编辑 AssemblyInfo.cs,似乎没有效果,并且 WPF 在此脚本中没有 GUID 代码。
我现在只能将程序文件夹加入白名单,但显然不能让用户放心,操作也很麻烦。
2021/5/21 更新
麻烦在于Windows Defender报告的不确定性:
Windows Defender 有时会处理它,有时不会。运行的时候可能会被查杀,之后再编译就什么都没有了。这使得它难以复制。
我在之前的应用程序中导入user32.dll引用了一些系统级的方法,但是新建一个Demo进行测试后,就可以正常工作了。
我也试过签名申请,两天后又被隔离了,现在举报变成Trojan:Script/Wacatac.B!ml?
不管怎样,我现在很困惑。也许我需要删除代码进行故障排除,但是很难调试,因为它被标记为病毒的时间不确定。
【问题讨论】:
-
一般来说,autoLaunch 配置是专门用于安装程序(而不是应用程序本身)的任务。已签名的应用程序(带有受信任的证书)可能会被防病毒软件列入白名单,也不会被阻止。
-
我怀疑启动文件夹中的快捷方式可以单独引起警报。 “这个脚本”到底在做什么?你能为我们准备minimal reproducible example吗?没有它,就没什么好谈的了:你的软件正在做一些破坏性的事情,而防御者会阻止它。
-
Related 关于超级用户的话题。
-
来自@invictusWarrior:尝试使用 RegistryKey 吗?快捷方式是以编程方式制作的,还是您用鼠标将其放在启动文件夹中?
标签: c# wpf visual-studio winforms windows-defender