首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从编程的角度来看,病毒是如何工作的?

从编程的角度来看,病毒是如何工作的?
EN

Stack Overflow用户
提问于 2011-08-11 19:50:02
回答 1查看 4.1K关注 0票数 3

我一直对计算机病毒着迷。多年来,我一直在努力了解它们,但由于它们的性质,人们不愿透露太多细节。

无论如何,我不是一个黑客,也不是在试图构建一个病毒。

如果有人愿意回答这个问题,我想知道是什么使病毒成为病毒,以及它们与间谍软件有何不同。

他们怎么能在你不注意的情况下把自己安装到电脑上呢?

蠕虫是如何工作的呢?程序如何自行复制和移动?它包含它的源代码吗?它是与其他程序接口,还是直接评估硬件以进行传播?

编辑:它们是用什么语言编写的?您会使用汇编/C++类型的语言还是在lua中将它们创建为脚本?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-11 19:58:13

好吧,一个蠕虫仅仅是一个自我复制的软件。想象一下,一个程序通过某个链接将其可执行文件复制到另一台计算机,并在那里启动它。那并不是那么神奇。

病毒只是一种蠕虫,它感染其他可执行文件,即它不复制自己的映像,但它将其“打包”到另一个应用程序的映像中,并使用该应用程序的执行流程来启动。

如果没有副作用和UI交互,用户不会注意到任何事情。如果用户在技术上比普通最终用户更有能力,这是很难实现的。一些恶意软件将目标系统托管在虚拟机中,因此作为用户的你很难看到任何可疑的东西,只要你不认为你看的是虚拟机。就像尼欧从母体中苏醒一样。

因为你可以用哪种语言实现没有限制,所以没有语言可供选择。自然是一种低级的本地编译语言,可以更通用地完成病毒/蠕虫必须做的事情,以保持低调。但是,有用汇编语言编写的蠕虫和病毒,Basic,C,Delphi,JavaScript,无论什么--没有什么是你不能想象的。

间谍软件有类似的要求,但目标不同。虽然病毒和蠕虫通常无缘无故地传播,或者在某个时候丢弃某种有效负载,但间谍软件希望要么“打电话回家”,要么打开目标系统,这样它就可以受到攻击,即被检查,更容易,通常是为了获得受害者的秘密、个人或其他有趣的数据。

希望这个快速的回答会有所帮助。你可以在bing上搜索更多详细信息:)

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7025317

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档