我已经用 MinGW 为 Windows 安装了一个 c++ 编译器。我试图制作一个简单的程序:
#include <iostream>
using namespace std;
int main() {
cout << "Hello World!";
return 0;
}
并将其保存为try.cc
. 之后我在文件夹中打开 cmd 并运行g++ try.cc -o some.exe
. 它生成some.exe
了,但我的防病毒软件 (avast) 将其识别为恶意软件。我认为这可能是误报,但它明确表示这是一个木马。
我从病毒箱中删除了文件并上传到“https://www.virustotal.com/” 结果:
72 个引擎中有 24 个将其检测为恶意软件,其中很多是木马。
这是误报吗?为什么它会被检测为木马?如果是这样,我如何避免每次制作新程序时都收到此警告?
编辑:
感谢大家的帮助,我用 2 次杀毒软件对我的电脑进行了全面扫描,一切看起来都很干净。我还对 MinGW 文件夹进行了扫描,但什么也没有。
每次我制作一个新的 c++ 程序时,问题都会不断出现。我尝试修改代码和名称,但 AV 一直将其检测为病毒。有趣的是,更改代码会改变 av 报告的病毒类型。
我仍然不能 100% 确定编译器是干净的,所以我不知道是否应该忽略它并运行程序。我从“https://osdn.net/projects/mingw/releases/”下载了MinGW
如果有人知道如何完全确定创建的可执行文件不是病毒,只有误报我会很高兴他们分享它。
编辑2:
我突然想到,如果编译器被感染并且它正在添加代码,那么我可能能够使用反编译器/反汇编器看到它,并为其提供可执行文件。我下载了一个我在这里找到的“雪人”的 c++ 反编译器,并在文件上使用了它。问题是代码从原始可执行文件中的 7 行变为 5265 行,有点难以理解。如果有人对逆向工程有一定的经验,原始文件的链接在下面的评论中。