我使用命令行使用 MinGW 编译器用 C 语言编译了一个简单的 hello world 程序。编译完成后,windows defender 弹出并检测到病毒(Trojan:Win32/Fuery.C!cl)。
#include <stdio.h>
#include <stdlib.h>
int main() {
printf("Hello World");
return 0;
}
我已按照 Windows Defender 的建议对此(已删除)采取了行动,但是当我再次编译时,同样的事情发生了多次。
我下载了一个 AntiVirus (Malwarebytes) 并扫描了我的整个系统,它检测到一些注册表项错误,但不是这个。
我也尝试过编译 C++ 文件,但 Windows Defender 没有检测到任何病毒。这只发生在我用 C 编译时。
我还尝试在 VirusTotal 检查编译的可执行文件。 https://www.virustotal.com/gui/file/476d47215dad80db49c9fd508ab5e10e5aeb5b623248ca156830a28b70affe5f/detection
我尝试了 CodeBlock 的 MinGW 编译器,0 个引擎检测到它。 (相同的 C 文件) https://www.virustotal.com/gui/file/8ba4b0fa24b1b6b69152acce2353fcca8447bbecbfc4e5ec48d33cc75d94f2f1/detection
编辑:我删除了 C:/MinGW 的路径变量并添加了 CodeBlock 的 MinGW 编译器。然后我使用命令行再次编译相同的 C 文件并将 .exe 文件上传到 VirusTotal。这次,检测到 0 个引擎。所以我得出的结论是,我安装的 MinGW 编译器造成了这个问题。 https://www.virustotal.com/gui/file/34d383f6c09f897d8c9a44ed0e7850574320e50fdf439eeb1f06705fdcc95386/detection
我不知道为什么会这样。我的计算机中是否存在影响我的 C 程序的恶意软件,或者这是错误检测?
原文由 tan 发布,翻译遵循 CC BY-SA 4.0 许可协议
没有恶意软件,这是误报。您的 MinGW 版本生成的可执行文件看起来与特定病毒非常相似。
为避免此问题,请将构建代码的目录添加到防病毒软件的排除列表中。
还可以考虑使用 mingw-w64 而不是 mingw.org 。