我发现了这个问题,它详细说明了防病毒软件的工作原理。但是我只是有一个客户问我这个问题,我真的不能给他一个很好,简单,易于理解的答案。我能想到的最好的办法是,每种病毒都有一个特定的“指纹”,并且该软件会在已知的感染区域中对其进行扫描。
我该如何以一种简单易懂的方式对此进行解释?
我发现了这个问题,它详细说明了防病毒软件的工作原理。但是我只是有一个客户问我这个问题,我真的不能给他一个很好,简单,易于理解的答案。我能想到的最好的办法是,每种病毒都有一个特定的“指纹”,并且该软件会在已知的感染区域中对其进行扫描。
我该如何以一种简单易懂的方式对此进行解释?
Answers:
检测机制,或者它们如何在更深层次上?
当人们对我说起恶意软件是如何在他们的计算机上传播的,为什么不总是能够将其删除后再将其删除,以及与恶意软件几乎有任何关系的问题时,我总是用类似的比喻来回答:
(当我写下来时,我听起来一定有点白痴,但我希望你喜欢它!)
想象您的房子是计算机,一个防病毒程序是几种不同的安全机制。
想象一下,您前门的保镖-进屋的任何人(进入您计算机的文件)都会经过他,他会检查它们是否干净*。如果他发现不好的地方,通常会给您选择做什么的选择。
想象一下,一个内部安全团队正在监视您家中的每个人(活动过程),对他们触摸的任何对象(文件)进行检查以确保其干净*
当无事可做或您选择时,您可以让安全团队检查房屋中的每个物体,以确保它们不受最新威胁的侵害。
虽然您的家庭安全将始终尽力而为,但没有什么是100%有效的。有人进入房屋后,如果他们没有停下来,他们可以做任何想做的事。尽管可以对它们进行清理,并且在大多数情况下,可以消除所有损害……他们可能会留下自己的安全团队,从而干扰您自己的安全。
`*正如兰道夫在回答中所说,通常是指纹和启发式方法的结合)
我似乎找不到它,但是Microsoft过去有一个有关创建AV软件的API文档,我只能找到指向MS Office / IE API指南的链接。我猜测由于假冒AV / Root套件,他们已删除了此信息。
(此外,赛门铁克还有一篇有趣的文章可供进一步阅读)
编辑-刚刚发现一个有趣的堆栈溢出问题... Windows防病毒程序如何挂接到文件访问过程中?
它们在多个级别上运行,包括:
如您所述,指纹定义可检查与数据库匹配的活动或文件签名
可疑行为,例如,引导扇区被无法识别的东西修改,或者内存被不应该访问的进程覆盖
Rootkit检测,它要求AV几乎像病毒一样运行(*这就是为什么AVG不喜欢ComboFix的原因-它所做的事情与病毒行为没有区别),因为它必须将自己隐藏在rootkit中。
这当然不是完整的列表,我欢迎对答案进行编辑。
您的操作系统是建筑物,病毒是小偷
Windows是一栋办公大楼
虽然每个人都可以进出,但他们必须通过安全检查,检查行李并通过X射线。这相当于一个活动的扫描仪。一切都经过检查,因此几乎没有任何东西会通过前门被带走。
在整个机构中,都有摄像头和保安人员监视它们,以查找可疑活动。这是被动扫描。保安人员非常善于查明常见的恶作剧行为,因为他们每天整天都在看人。
更重要的是,如果您通过X射线扫描仪进行时髦的鸡舞,将不会有任何问题。
这样的感染。小偷在前面的守卫面前跳着时髦的鸡舞。一旦他们进入并拿走他们想要的东西,他们只需要找到(或创建)后门就可以拿走货物。
如果盗贼不老练,被动式扫描仪将发出警报并向他们发出安全警报,但是,如果您最近看过《十一洋》,您会明白我的意思:“并非所有盗贼都是老练的”。本质上,一旦有坏人进屋,如果他是个好人,他就会知道如何逃避和颠覆您的监视系统,因此您甚至都不知道他在那里。然后,它是带有您的数据的免费游戏。
更糟糕的是,他们很有影响力。他们在您的系统内交了朋友(感染其他应用程序),因此,即使您成功引导了他们,他们也可以叫一个伙伴让他们重新进入。被动扫描器不仅会监视坏人,而且观察每个人的行为,但并不完美。
特洛伊木马就像一个隐藏的小偷,躲在一个紧急出口的外面,如果他听到外面一个哥们的秘密敲门声,他就会从里面打开门。您真的不想要其中之一,因为它们非常有才华。
Mac是办公大楼,但具有钥匙卡系统
进入建筑物后,您必须与门卫登录才能获得通行证。但是,一旦进入,您就可以自由移动您有权漫游的区域。如果您需要访问公司清单,则需要再次登录才能获得更高级别的通行证。每次离开安全级别时,都会丢失通行证,因此每次需要重新进入时都必须签名。
这里的漏洞是,确保您知道应该允许您授予访问权限的人员进入。
Linux就像军事基地
您必须通过安全措施才能进入大门,但您还需要等级/头衔才能访问部分基地。例如,如果您不是飞行员(并且不是高级官员),您将无法进入飞机场;如果您不是潜水员,则您将无法进入潜艇。
将根帐户视为一般帐户。他不需要准许去任何地方,因为他是基地上的最高级军官。因此,您不想让您的将军放任任何人进入基地(因为他将毫无疑问地服从他)。
Linux的诀窍是,不要让自己成为将军。让自己成为一名忠实履行职责的小官。然后,当那个小官员发现他需要一些额外的资源来完成工作时,请暂时将其升级(Linux中用于提升特权的命令是sudo,它会授予临时的root访问权限),以使General运转起来。
实际上,Linux和Unix对特权使用相同的安全模型。Mac不会像Linux那样对系统进行分隔,以使其更加用户友好。
所有这些系统的主要问题是,一旦盗贼找到了出路,他们就可以创建后门,以便以后无需安全就可以进入。
唯一真正安全的系统安全措施是拥有更复杂的系统。就像,回到过去的每一天的开始。这相当于沙盒虚拟化。每次加载操作系统时,它都会加载一个全新的副本。没有后门将存在,因为操作系统将恢复为盗贼进入之前的状态。此方法有局限性,但它们太详细/太复杂了,无法在此进行介绍。
大多数人(有些人很方便)忽略的窍门是。一旦您允许某人进入建筑物并向他们授予访问权限,他们就可以允许其他人进入。因此,不要让穿着黑白条纹衬衫的人(在某些情况下是戴着量子力学书籍的小女孩)首先是前门。除了时髦的鸡舞,除非您允许,否则它们无法进入。
病毒扫描程序的问题是,人们过于依赖它们。考虑一下,您的主动或被动扫描器都不了解这种时髦的小技巧。您只是自由地让一个坏人进入您的系统。如果您幸运的话,他会做一些引起被动扫描仪注意的事情。如果您不幸运,他会在您的系统中从一个影子移到另一个影子,造成严重破坏,您甚至都不知道他在那里。
0天软件漏洞(暴露尚未修复的安全漏洞的已知软件缺陷)等同于时髦的鸡舞。微软也不是唯一责怪他们的人。我已经看到Adobe Flash骇客入侵并在不到15秒的时间内破坏了我的系统,使其无法修复。
Windows / Linux往往不会出现时髦的小问题,因为您在整个系统中的任何地方都拥有访问权限(键卡,等级)。
一个rootkit的就像有这些家伙一个绑架你的主管安全官,他锁在柜子里,和扮演他。在担任安全负责人的职位上,他有权随意雇用/解雇任何人并更改政策。如果他们找到他,您真的会被搞砸了,因为他可以解雇整个安全人员或实施政策,迫使安全人员凝视他们的脚,坐在被解雇的威胁上。就是 你真的不希望这个人受到损害。
希望对您有所帮助。