什么是计算机病毒?
- 定义:计算机病毒是 “一组计算机指令或程序代码,由程序员插入计算机程序,以破坏计算机功能或毁坏数据,影响计算机的使用,并能自我复制”。
- 广义:因为计算机中的病毒会影响机器的速度,或者崩溃和破坏系统,病毒会对用户造成很大的损害,通常在这种情况下,我们称具有破坏性影响的程序为计算机病毒,它也可以是任何以某种方式对用户、计算机网络造成损害的恶意程序,如:特洛伊木马、蠕虫、rootkit、广告软件、捆绑软件、间谍软件、间谍程序、间谍软件,计算机病毒等,捆绑软件,间谍软件,勒索软件等。
- 总结:可造成危害的程序
著名的计算机病毒案例
- Mydoom – 380 亿美元
- Sobig – 300 亿美元
- ILOVEYOU – 150 亿美元
- WannaCry – 40 亿美元
- Zeus – 30 亿美元
- Code Red – 24 亿美元
- Slammer – 12 亿美元
- CryptoLocker – 6.65 亿美元
- Sasser – 5 亿美元
计算机病毒如何分类?
为了更好地了解计算机病毒,通常将它们分为以下几类:
载体分类
- 引导病毒:驻留在磁盘引导区或主引导区的计算机病毒。这类病毒利用系统启动时不区分主引导区内容正确与否的缺点,在引导型系统启动时侵入系统,驻留在内存中,监视系统运行,待机时进行感染和破坏。
- 文件型病毒:主要通过感染计算机中的可执行文件(.exe)和命令文件(.com)。文件型病毒会修改计算机的源文件,使其成为新的病毒文件。一旦计算机运行该文件,它就会受到感染,从而传播病毒。
- 混合型病毒:一种同时具有启动病毒和文件病毒寄生方式的计算机病毒。
链接方法
- 源代码型病毒:攻击以高级语言编写的程序,在编译以高级语言编写的程序之前,将病毒插入源程序,并在编译成功后成为合法程序的一部分。
- 嵌入式病毒:将自身嵌入到现有程序中的病毒,通过插入的方式将计算机病毒的主程序与攻击对象联系起来。
- 操作系统型病毒:将自身添加到操作系统中或用自身程序替换部分操作系统来完成工作的病毒,其破坏性极大,可导致整个系统瘫痪。此外,由于感染了操作系统,这种病毒在运行时会用自己的程序片段取代操作系统的合法程序模块。
目标系统
- DOS 病毒:只能在 DOS 环境中运行的计算机病毒(引导病毒并不局限于 DOS 操作系统,也存在引导病毒;某些早期的病毒只是占用引导记录作为病毒体,但仍能破坏计算机硬盘的引导记录),具有传染性的计算机病毒,是最早出现的计算机病毒。
- Windows病毒:感染 Windows 可执行程序并能在 Windows 下运行的病毒。
- UNIX、Linux 病毒:只感染 Unix 和 Linux 操作系统的病毒。
- 物联网病毒:以硬件为目标的感染。
- APP 病毒:针对移动应用程序的感染。
功能分类
- 蠕虫:可自我复制并感染其他计算机病毒。
- 后门:攻击者可以绕过安全认证,远程控制受感染的计算机
- 僵尸网络:僵尸网络:由大量受感染计算机组成的网络,可发动大规模网络攻击,如 DDOS 攻击。
- 特洛伊木马: 一种特定编程的木马,可控制另一台计算机。与普通病毒不同,它不会自我复制,也不会故意感染其他文件。它通过伪装为作案者提供一个打开主机的入口,吸引用户下载并执行,从而使作案者可以随意破坏和窃取作案者的文件,甚至远程操控主机。
- 下载器、启动器:用于下载和执行其他病毒的恶意代码
- 间谍软件:收集受害者电脑信息并发送给攻击者的恶意代码
- 广告软件:带有广告的计算机程序,用于牟利。这类软件往往强制安装,无法卸载;在后台收集用户信息牟利,危害用户隐私;经常弹出广告,消耗系统资源,运行速度变慢等。
- 捆绑软件:捆绑软件是指在用户安装软件时自动安装单个或多个软件的软件。它在安装时是静默安装的,不会告诉用户是否要安装该软件。
- Rootkit: 一种获得计算机根权限的工具,可用于隐藏其他计算机病毒。
- 勒索软件: 一种通过加密受感染用户的文件或硬盘驱动器索取赎金的病毒。
- 垃圾邮件病毒: 感染用户电脑后,利用系统资源和网络资源发送大量垃圾邮件(如广告邮件、钓鱼邮件等)的病毒。
攻击目标
- 流行的计算机病毒:例如,勒索软件使用的是投网方式,旨在感染尽可能多的机器。这类恶意代码更常见,恶意行为更明显,很容易检测和防御
- 目标计算机病毒:如针对特定组织开发的特异后门病毒。传播范围不广,样本难以收集。代码非常复杂,病毒分析通常需要使用一些高级分析技能。例如针对核工业系统的 ShockNet 病毒。
什么是计算机病毒分析?
计算机病毒分析通常提供计算机病毒事件应急响应所需的信息,包括以下分析要素:
- 病毒对系统做了什么?
- 找到受感染的电脑和可疑程序。
- 分析可疑文件。
- 提取可检测系统和网络病毒的特征码。
- 测量并消除计算机病毒造成的破坏。
计算机病毒分析的目标是什么?
- 分析感染是如何产生的
- 分析病毒的流向
- 分析病毒传播的风险
- 分析如何识别病毒
- 分析如何清除病毒
如何在第一时间发现计算机病毒呢?
您可以从计算机病毒签名代码入手,这些代码可用于检测和查杀病毒文件,阻止病毒传播,并可按照以下类别进行细分。
主机签名
主机签名关注的是病毒对系统造成了什么影响,而不是病毒本身的文件特征,它比反病毒软件签名更有效(注:文件信息可以通过技术手段修改而使签名失效,如加壳程序、使用花指令等)。
例如:
特定文件创建、读取和修改行为
特定注册表创建、读取和修改行为
特定启动项的创建、读取和修改行为
特殊行为,如自删除
网络签名代码
这是通过分析计算机病毒的网络通信数据提取的,其中包括恶意 IP 地址、URL、电子邮件、攻击数据包、计算机病毒之间的通信协议等。它还可以与主机特征相结合,以提供更高的检测率和更少的误报率。
例如:
与已发布的网络钓鱼网站和网络钓鱼平台进行数据交互
有哪些常见的计算机病毒分析技术呢?
为了更好地理解,现对以下类别进行说明
- 静态分析:静态分析方法是在计算机病毒不存在时对其进行分析的相关技术,包括分析病毒可执行文件,而不查看具体的 CPU 指令。
常见的分析工具包括 CoBOT、Coverity、Klocwork、Checkmarx、Fortify、Testbed、PinPoint、C++ test、VirusTotal、strings、PC-Lint、QAC、IDA pro、cutter、GDA 等。
优点:快速、简单、深入分析计算机病毒。
缺点:难以分析复杂的计算机病毒: 难以分析复杂的计算机病毒,可能会遗漏重要行为,并容易受到代码混淆技术(如加壳、闪烁命令等)的影响。 - 动态分析:动态分析方法需要运行病毒,并使用调试器分析病毒运行时的内部状态,动态执行每条指令,以验证静态高级分析的结果。
常用分析工具包括 RegShot、Process Mointor、ApateDNS、Netcat、Wireshark、INetSim、OllyDbg、x64dbg、dnspy、Sysinternals toolset 等。
优点:简单,可减轻代码混淆。
缺点:可能会利用一些重要的病毒功能,而且只能覆盖一个计算机病毒执行轨迹。
分析经验分享
首先:做好分析前的防护工作,利用一定的手段避免病毒的传播,在静态分析前,在动态分析中,要取长补短,多方面思考,也不要过于纠结于细节,关注其主要危害,在后期深入分析前要有一个很好的大体了解。
其次:可以尝试从不同的角度,用不同的工具和方法来分析计算机病毒,不要局限于此。
总之:计算机确实在与时俱进,分析也应如此。不要停止前进的脚步,但也要站在病毒发布者的最前沿,首先发现危害,并开始防御和分析。
© 版权声明
THE END
暂无评论内容