windows - 有没有办法将 Microsoft 的 .exe 列入 SmartScreen 白名单?(无 EV 证书)
问题描述
Microsoft SmartScreen,以其消息而闻名:
Windows Defender SmartScreen 阻止了无法识别的应用程序启动
对最终用户避免恶意软件很有用,但也会伤害独立开发人员,因为当他们分发二进制文件时:最终用户看到可怕的消息,这对开发人员的声誉造成了问题(见某人的评论“我的客户经常认为我在提供病毒、恶意软件或其他非法的东西,他们告诉他们的朋友,我失去了销售”):
尽管我签署了可执行文件,但智能屏幕过滤器仍然抱怨,为什么?
即使使用付费证书,如果software-release1.0.1.exe
最终被列入白名单,当您发布software-release1.0.2.exe
更新时,消息会再次出现:
Transferring Microsoft SmartScreen 信誉到更新的证书
唯一的解决方案似乎是扩展的“EV 代码签名”,每年可以达到 300-500 美元(这个固定费用使小型独立开发者的税收百分比更高)。
问题:有没有办法通过将 .exe 提交给 Microsoft 进行分析,立即(或几天)为所有用户(不仅是在我自己的计算机上)将 .exe 列入白名单?
我看过这个链接:https ://www.microsoft.com/en-us/wdsi/filesubmission ,有人能够成功使用它来避免进一步的 SmartScreen 警报吗?(似乎没有)。
还有其他方法吗?比如通过自动化脚本自动部署100台VM,让每台VM自动下载安装.exe?但这可能来自同一个IP,那么微软可能会将声誉计数器增加+1而不是+100?
解决方案
正如您在问题中所说,拥有受信任软件的第一个解决方案是使用 EV 证书进行代码签名但是,另一个棘手的解决方案是提高您的软件的声誉。
正如微软所说:
基于信誉的 URL 和应用程序保护
如果 URL、文件、应用程序或证书已建立声誉,用户将不会看到任何警告。但是,如果没有声誉,则该项目将被标记为较高风险并向用户显示警告。
因此,在您问题的最后一段中,您提到了创建大量 docker 容器或虚拟机以增加信任和声誉。我使用每个 VM 或容器中相同 IP 地址的解决方案来完成它。
解决方案是在所有 VM 或容器中使用TOR作为代理。通过使用 tor,您可以创建连接到 TOR 网络内的代理,并将您的真实 IP 地址隐藏在您的虚拟机或容器中。Tor 是免费使用的,您可以根据需要将节点连接到它的网络,并经常更改您的 IP 地址。此外,最好在某些 VM 中使用不同版本的 Windows。
请记住,在此之前您必须提交您的软件进行恶意软件分析,
推荐阅读
- python - 我无法使用 vscode 运行 jupyter
- javascript - 使用给定用户 ID 的 Gmail API 身份验证
- ruby - 哪个更有效:respond_to?还是什么都不做的方法?
- vba - 每个循环的 VBA
- c# - It.Is 条件设置为零
- android - 如何从firebase中的pathString null错误中逃脱
- python - 当我使用 Onehotencoder 得到以下错误
- javascript - react-native-ble-manager 不返回任何内容或永远不会触发事件“handleDiscoverPeripheral”
- javascript - 带有控件的 HTML5 视频,但对其进行自定义:禁用播放/暂停按钮和搜索栏
- java - 如何编译现有的 .9.patch 并以编程方式将其保存到存储中?