防病毒软件如何知道?

防病毒软件如何知道?

我刚刚尝试运行我的一个应用程序,它是一个接收命令并将其输入到 cmd 的客户端。当我尝试运行它时,Microsft Defender 立即将其删除,并给我这个 Trojan:Script/Wacatac.B!ml。

描述中还有这样一段话:“这个程序很危险,会执行攻击者的命令,它怎么知道应用程序在做什么,甚至都不运行它?从我已经读过的内容来看,我发现这system()可能会引起怀疑,但我还没有用过它。”

附言

这是学校布置的作业,从技术上讲,是否删除它并不重要,但我很好奇。

答案1

至于防病毒软件,它们不会在程序出现问题时立即停止程序。这往往为时已晚。相反,它们会根据密钥签名扫描文件。

当您使用编程语言编写程序并运行它时,它会使用解释器编译为可执行文件。此解释器编写标准化指令来创建可执行文件。如果某些代码可能对系统有害,它将包含签名。这基本上意味着,当您检查程序指令时,一系列连续的指令将是相同的,并且已知用于恶意代码。这称为签名。

为了在病毒造成任何损害之前将其阻止,程序在启动时会进行扫描并停止执行。如果发现此类签名,则认为该程序足够严重,然后将其删除。

在某些情况下,它不是发现的签名,而是正在执行的第一条指令之一,例如打开使用可疑端口进行监听的端口,通常用于攻击,或者尝试在某些位置进行写入或执行管理任务。

相关内容