# 如何解决软件发布或误报问题以及病毒误报厂商提交大全

网上有很多其他编程语言用户吐槽 EXE 高误报的内容，
例如用 Python 写几句代码打包 EXE 就误报得一塌糊涂，但是这些内容里基本吐槽的都是杀毒软件而不是编程语言。

权利与义务从来都是对等的，
微软自家的 PS,VBA 都默认禁止运行，EXE 本就是高权限高风险的程序。

有条件可以买数字证书，否则可以向误报的杀毒厂商提交。
一点误报不要急，付出少许耐心，能解决的！！！

## 说明

1.  发布目录应添加为杀毒软件信任目录
aardio 工程首次发布时会自动打开 Windows Defender 信任目录设置工具，
如果不这样做，生成 EXE 可能非常慢，或者生成的 EXE 文件可能无法正常运行。
在清除误报以前 —— 请始终在设置为信任开发目录的工程目录下操作该文件。

2.  不要有侥幸心理
软件发布前你自己用杀毒软件扫描无任何误报 —— 这通常没用，
也不要以为改几句代码，或者换个编程语言没有误报就安全了 —— 发布出去过几天可能就出现误报了。

3.  不是所有报毒都是误报
请先自查软件是否有不安全、潜在不安全、不受欢迎的行为，例如不要自动设置开机启动 —— 改为让用户自主选择是否开机启动。一些杀毒软件对于流行度高的软件会相对宽容（ 流行度不是单纯指用户量 ），对新的未知软件相对严格，所以新软件尤其要注意自查。

4.  发布时提供压缩包而不是原文件
下载可运行的 EXE 文件通常被认为具有潜在风险，建议发布压缩包而不是原文件，基本所有电脑都有解压软件都能支持流行的压缩格式（例如 7z ）

## 系统自带 Windows Defender 误报提交方法

时移势易，现在除了 Windows 系统自带的 Windows Defender ，使用第三方杀毒软件已经不多见。
一般的软件只要解决了  Windows Defender 的误报基本就可以了。

对于 Defender 目前其检测过白的方法有些特殊：

1. 一定要用  "infected" 作为密码，将 EXE 打包为 zip 再提交，避免在检测前文件被处理
2. 自己先行测试，确实有误报再提交。可将文件发布到网上，密切观察，一旦出现误报就立即提交误报检测。
3. 如果检测仍然不通过，建议重新做一个版本再提交（其他方法可能都是徒劳，改几句代码让 EXE 的哈希发生变化，然后再重新走上面的流程）。
4. EXE 确实不再误报了，但打包文件（例如 xxx.zip, xxx.7z） 仍然误报。建议修改压缩参数重新打包（其他方法基本都是徒劳，没用的），例如压缩率调低一些让压缩包的哈希发生变化。

如果还不过，那么就需要检查一下软件是否真的有问题。

微软Windows Defender 误报提交
https://www.microsoft.com/en-us/wdsi/filesubmission
1. 点击「Software developer」图标，然后点「Continue」按钮，然后用微软账号登录，也可以用github账号邮箱登录。
2. 打开「Submit a file for malware analysis」网页以后，在「Select the Microsoft security product used to scan the file *」下拉框选择产品，这里一般选「Microsoft Defender Antivirus (Windows 10)」就行了。
3. 在「Select the file *」项点「Select」上传软件。注意提交 zip 压缩包，压缩密码设为 `infected`，不要用其他压缩格式。
4. 「Should this file be removed from our database at a certain date?」这里可以选「Yes」,日期默认是5年后。
5. 「What do you believe this file is?」这里选「Incorrectly detected as malware/malicious」
6. 「Detection name *」这里写病毒名称，如果本机没误报，换台机器一般就有了，这个可以在发布软件之前提交，并不需要等到发布以后，实在不确定可以随便写一个病毒名，例如 Trojan: Win32/Wacatac.D!ml
7. Additional information * 这里随便写几句，也可以附上软件官网网址。例如

```txt
There is a false positive for my software.
The sample is in a password protected zip file，The password for the attachment is "infected". 
Please re-check it and remove it from your virus list.
Thanks very much!
```

> 建议认真写一份更详细的 Additional information， 提供软件用途、软件来源、历史、用户群、背景与开发者信息、必要的承诺与保证、样本信息 …… 等尽可能详细的内容。

现在 defender 基本不认识的EXE就会误报，而且系统自带，市场份额较大，建议大家重视。

查看提交历史： https://www.microsoft.com/en-us/wdsi/submissionhistory

在 aardio 里运行以下代码更新 Windows Defender 病毒库:

```
//RUNAS//
import console; 导入控制台;
import process.mpCmdRun;
process.mpCmdRun.updateDefinitions();
console.pause( console.pause（true);
```

在 aardio 中运行下面的代码收集 Windows Defender 日志：

```
//RUNAS//
import console;
import process.mpCmdRun;
import win.clip.file;

console.showLoading(" 正在获取 Windows Defender 日志")
var logPath = process.mpCmdRun.getDiagnosticFile()
if(logPath){
    //为尽量仅收集与问题有关的数据，建议在干净的电脑或虚拟机上执行此操作。
    win.clip.file.write(logPath)
    console.log("已复制 Windows Defender 日志文件到剪贴板")
}

console.pause(true);
```

## 发布或误报问题排查

如果生成EXE失败、或生成的EXE文件不正常，文件莫名其妙消失，不能正常运行等等，请首先检查任何可能干扰EXE生成的因素：

1.  自己的代码中有没有敏感的，可能被误判为威胁的操作。
2.  杀毒安全类软件，及这些软件创建的后台服务。
3.  检查某些软件“安全模块”。
4.  不要在 U盘 上编写发布软件，U盘被误杀或干扰的机率更高
5.  不要在虚拟加密分区发布软件，这些软件可能会影响 EXE 文件生成（可在工程中将生成EXE的发布目录设为普通硬盘分区）
6.  首次发布工程时，请使用 aardio 自带信任目录设置工具，将发布目录添加为 Windows Defender 信任目录，不然生成 EXE 会非常慢。
7.  .........其他任何可能干扰文件读写的监控软件。

## 发布或误报问题处理

一、生成EXE文件中被安全软件干扰，导致无法生成EXE文件或生成的EXE文件不正常
首先，如果在开发环境中运行正常、发布程序后如果运行 EXE 却出现错误，很有可能是安全软件在监控导致生成 EXE 过程中出现错乱，这时候请暂时关闭杀毒或安全类软件，并退出 aardio 开发环境然后重新打开再试一次就行了。

二、生成EXE成功，但是EXE文件被误报，或双击无法运行（没有任何提示）
目前很多基于服务端白名单进行云查杀的安全软件（或某些非安全软件的在后台运行的安全模块）会误报未知EXE、或阻止您的软件启动(可能无任何提示)，也有可能您生成EXE时一切正常，但发布给别人使用一段时间后被误报或拦截。解决这个问题并不难，只要你的软件没有恶意代码纯属于误报的情况：仅仅需要简单的提交你的被误报的软件给相关杀毒厂商基本都会比较快的过白、清除误报。

三、软件在浏览器中下载时被提示为恶意软件
这通常没关系，过一段时间就会自己好了，很多知名软件都有类似问题。如果你是一个全新的软件发布到互联网上，浏览器在下载该软件时可能会拦截或报警，这没有关系，这是基于社区信任评估机制，一个新的下载地址、新的文件被下载出于安全的顾虑会无条件的阻止或警报（即使软件加了数字签名、没有过界行为等等都可能被无条件警报 ）。一般放几天以后就不会再提示了。我们也建议大家尽可能以压缩包格式发布软件（ 直接提供EXE文件下载容易被拦截警告 ），强烈建议大家不要直接提供EXE格式的文件下载，改成7z等压缩包格式。

四、为软件添加签名以避免误报或被拦截。
软件生成以后，有需要的推荐到权威可信的证书服务商购买软件签名证书对软件进行签名，基本可以避免安全杀毒软件误报，在软件的行为上也会增加一些容忍度。注意： 请勿相信网络上他人免费提供给你的来历不明的不用花钱的签名工具（这种证书毫无价值，更不可轻信他人将来历不明的根证书添加为系统信任根证书 )。

五、安全杀毒厂商提交软件过白名单如果是360、金山、百度杀毒等软件，可以到官网的安全认证平台申请账号（ 都允许企业、或个人工作室注册）以后直接提交过白就不会再被相应的安全软件误报：

## 其他安全、杀毒软件厂商误报提交方法大全

其他误报一般可以写邮件或到网站上去提交。
下面是英文邮件范例( 下面的VBA32换成杀毒软件产品名称即可 ):

邮件主题：
`False Positive Submission`

邮件内容：

```txt
Dear {杀毒厂商名}:
There is a false positive for my software.
我的软件出现误报。
The sample is in a password protected zip file，The password for the attachment is infected
示例在受密码保护的zip文件中，附件的密码被感染
Please re-check it and remove it from your virus list.
请重新检查它并将其从您的病毒列表中删除。
Thanks very much! 非常感谢！
```

> 建议认真写一份更详细的邮件， 提供软件用途、软件来源、历史、用户群、背景与开发者信息、必要的承诺与保证、样本信息 …… 等尽可能详细的内容。

邮件附件：
提交zip压缩文件，加密码"infected"

注意杀毒软件提交的误报样本，一般会要求打包为 zip 文件，并设置密码为 'infected' 或 'virus' （ 具体参考误报提交页面的说明，不设密码可能导致你的提交的样本被自动误删）


360安全卫士误报提交:
http://open.soft.360.cn/report.htm

腾讯电脑管家误报提交：
https://support.qq.com/products/415334/faqs-more/?id=128301

火绒误报提交:
误报提交邮箱：seclab@huorong.cn

VBA32
feedback@anti-virus.by
邮件主题：
False Positive Submission

邮件附件：
提交zip压缩文件，加密码"infected"

360杀毒误报提交:
http://sampleup.sd.360.cn/index.php

奇安信误报提交:
https://www.qianxin.com/other/sample-upload

东方微点：
http://service.micropoint.com.cn/mail.php   

江民 误报反馈邮箱：
virus@jiangmin.com
到江民官网论坛提交

赛门铁克误报提交
https://symsubmit.symantec.com/false_positive

卡巴斯基
误报提交网址：https://support.kaspersky.com/1870
newvirus@kaspersky.com
附件把被报毒的文件用zip压缩一下加进去，ZIP设置一个密码virus，避免被邮件服务器拦截

Avira(小红伞)
http://analysis.avira.com/samples/ 选”可疑的误报”
可到论坛申请深层分析 http://forum.avira.com/wbb/index.php?page=Board&boardID=140

NOD32
安装NOD32试用版，打开NOD32点工具，然后可以提交误报文件。
samples@eset.com
压缩zip发送

NANO-Antivirus
误报提交网址：https://www.nanoav.pro/index.php ... =15&Itemid=&lang=en
theme 下拉框选 False detection
这个误报提交点「Send」以后页面可能长时间没有任何反应，要耐心的等等等，最后会提示提交成功。

Cyren
zip打包，密码为 infected
发送到邮箱 support@cyren.com

BitDefender 方法一： 到这里提交 https://www.bitdefender.com/submit/
方法二：BitDefender病毒样本上报邮箱： sample@bitdefender-cn.com
附件一定记得把被报毒的文件用zip压缩一下加进去，ZIP文件可以加密为 infected

赛门铁克（诺顿）
https://submit.symantec.com/security_risks/dispute/
https://submit.symantec.com/false_positive/standard/

Dr.Web
误报文件提交网址：https://vms.drweb.cn/sendvirus/
选择上传文件后，Submission category下拉选框中选择：False detection
Comments中输入：Dear Dr.Web: There is a false positive for my software. The file is in attachment. Please re-check it and remove it from your virus list.
Thanks very much!

AVG
误报文件提交网址：https://www.avg.com/en-us/false-positive-file-form
virus@avg.com
zip或rar压缩发送

AVAST
误报提交网址： https://www.avast.com/false-positive-file-form.php
也可以试试提交到邮箱：virus@avast.com

麦咖啡

在线提交 zip 或 rar 压缩包： https://www.mcafee.com/en-us/con ... n-allowlisting.html

sophos
https://support.sophos.com/support/s/filesubmission
提交 zip 或 7z 压缩文件

F-PROT
http://www.f-prot.com/virusinfo/false_positive_form.html
提交zip 如设置加密 请在Zip archive password写上压缩包密码

F-Secure
http://www.f-secure.com/samples/index.html
需要注册，注册成功后直接在Submit a new sample那儿点submit
提交zip压缩文件

Panda
误报问题可以通过提交zip压缩文件并发信到Virus@pandasecurity.com来解决

Prevx
误报问题可以通过提交（需要加密：infected）rar压缩文件并发信report@prevxresearch.com来解决 （zip文件将会被拒绝）

emsisoft
误报问题可以通过提交（需要加密，密码在信件正文中提示出来）zip压缩文件并发信fp@emsisoft.com来解决

Comodo
误报问题可以通过直接到网站页面提交zip压缩文件（推荐） http://internetsecurity.comodo.com/submit.php

ikarus
误报问题可以通过提交zip压缩文件并发信到 false-positive@ikarus.at来解决

Sunbelt
误报问题可以通过直接到网站页面提交zip压缩文件http://www.sunbeltsecurity.com/falsepositive/

esafe
误报问题可以通过提交zip压缩文件并发信到esafe.virus@eAladdin.com 来解决
或填表，联系客服，但要填的内容相当多：
http://www.aladdin.com/forms/send-email/form.aspx

AhnLab-V3
误报问题可以通过提交zip压缩文件并发信到v3sos@ahnlab.com来解决

nProtect
误报问题可以通过提交（需要加密：infected）zip压缩文件并发信isarc@inca.co.kr来解决

GData
在线提交误报地址：https://su.gdatasoftware.com/us/sample-submission/
误报样本可上报给：china@gdatasoftware.com 压缩密码：virus
也可通过邮箱上报给Bitdefender或者Avastvirus@avast.com 压缩密码：virus
sample@bitdefender-cn.com 压缩密码：infecte

quickheal
误报提交( 要开代理才能打开 )：
https://techsupport.quickheal.com/report-an-issue/false-positive

Immunet Protect，ClamAV ，Moon Secure, Untangle误报提交:
https://www.immunet.com/false_positive 这个网站我试了下，不用国外代理打不开。

Trend Micro误报提交:
https://www.trendmicro.com/en_us/about/legal/detection-reevaluation.html

ALYac 误报提交:
https://en.estsecurity.com/support/report
下载一个软件提交,不开代理可能会提交失败.

Ad-Aware 误报提交:
https://www.adaware.com/report-false-positives

Bkav 误报提交:
发邮件到 bkav@bkav.com.vn 附件打包为7z并加密码infected (邮件里要说明密码)

eScan 误报提交:
http://support.mwti.net/support/index.php?/Tickets/Submit/RenderForm

AegisLab  误报提交:
发邮件到 support@aegislab.com

Malwarebytes:
https://support.malwarebytes.com/hc/en-us/requests/new
不要点推荐答案，提交以后弹出页面上点 「No, I need Help」

Fortinet
https://www.fortiguard.com/faq/onlinescanner
选择上传文件，输入邮箱后弹出下拉选项，点选：This is a clean file and advise not to be detected (False Positive)
然后点「Submit」提交。
