Chapter 3 恶意代码及其分类
3.1 定义
恶意代码,指为达到恶意目的而专门设计的程序或代码
注意:正常的软件也会引发安全问题,但大多数情况下都并非是作者有意为之。
分类:病毒、蠕虫、木马、后门、Rootkit、流氓软件、僵尸、Exploit等。
练习题
1. 某公司开发了一款社交软件,为了在该软件产生bug时能够更加及时反馈信息,该公司在这款软件中设计了一个后门,并同时开发另一款配套软件用于将bug信息(程序产生bug时的内存状态等)上报至该公司的服务器。软件的后门就是为这个配套软件准备的。这款配套软件______(填是或不是)恶意代码,理由是________________。某黑客组织通过逆向分析发现了这款社交软件的漏洞并编写程序用于远程控制计算机,这个程序_______(填是或不是)恶意代码。
答案:不是;该配套软件的目的并非恶意;是
3.2 功能
恶意代码的攻击目的:
- 恶作剧,炫耀自己的技术(如熊猫烧香病毒)
- 经济利益(如WannaCry病毒)
- 商业竞争
- 政治目的
- 军事目的等
练习题
2. 上世纪末,美国在塞尔维亚进行军事行动时轰炸我南联盟大使馆,令无数国人愤慨。消息传出,中国红客联盟应声出动,对美国政府网站发动了DDoS攻击,并成功在政府网页上贴上了中国国旗的图片。这个过程中涉及的恶意代码的攻击目的是_________________。
答案:政治目的
攻击目标:
- 个人计算机
- 服务器
- 移动智能终端(如手机平板等)
- 智能设备(如车联网、智能家居、手环等)
- 通信设备(路由器、交换机等)
- 安全设备等(如防火墙、IDS、IPS、VDS等)
- IDS:intrusion detection system,入侵检测系统,是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。
- IPS:Intrusion Prevention System,入侵防御系统,能够监视网络或网络设备的网络资料传输行为的计算机网络安全设备,能够及时的中断、调整或隔离一些不正常或是具有伤害性的网络资料传输行为。
- VDS:Virus Detection System,病毒检测系统,能够对网络传输中的数据进行计算机病毒相关检测的设备型产品形态的总称。
攻击目标范围:
- 定点攻击(指定邮件、域名、IP、QQ等,或服务器列表等)
- 群体攻击(如可传播的病毒、木马、蠕虫,钓鱼攻击等)
练习题
3. 某黑客组织攻破了某公司的服务器,获取了其产品所有用户的用户名与密码信息。由于很多人习惯在多个平台的账户使用同一个密码,黑客于是拿着这些密码在QQ、网易等平台上尝试登录这些用户的其他账户,这被称为撞库攻击。这种攻击属于___________(填“定点攻击”或“群体攻击”)
答案:定点攻击
注意:定点攻击和群体攻击的区分不是通过攻击的个体数量来区分,而是通过被攻击的个体是否能够被提前确定来区分。群体攻击中,无论是会传播的病毒木马还是钓鱼攻击,黑客在病毒、木马等被制作出来时不知道被攻击的对象是谁。
恶意代码的攻击功能:
- 获取数据
- 静态数据,如文件、数据库数据等
- 动态数据,如口令、内存、计算机网络流量、通信网络数据、可移动存储介质、隔离电脑等
- 破坏系统
- 删除或修改数据
- 破坏系统服务,如通用Web服务系统、数据库系统、特定行业服务系统(如工控系统)
- 破坏支撑设备,如网络设备,线路等
- 动态控制与渗透拓展攻击路径等
- 中间系统
- 相关人员
静态数据和动态数据的区别:静态数据是指在运行过程中主要作为控制或参考用的数据,它们在很长的一段时间内不会变化,一般不随运行而变。动态数据包括所有在运行中发生变化的数据以及在运行中需要输入、输出的数据及在联机操作中要改变的数据。(来源:百度百科)
3.3 恶意代码的分类
1.计算机病毒
一组能够进行自我传播、需要用户干预来触发执行的破坏性程序或代码。
例:CIH(破坏BIOS系统)、熊猫烧香等
2. 网络蠕虫
一组能够进行自我传播、不需要用户干预即可触发执行的破坏性程序或代码。
例:SQL蠕虫王、震网病毒(攻击工控系统)、Stuxnet等
病毒和蠕虫最大的区别就是是否需要用户干预才能执行。“计算机蠕虫可以独立运行,并能把自身的一个包含所有功能的版本传播到另外的计算机上”,“计算机病毒是一段代码,能把自身加到其他程序包括操作系统上;它不能独立运行,需要由它的宿主程序运行来激活它”,可以将二者与生物界的蠕虫和病毒联系起来理解。
3. 木马(特洛伊木马)
是指一类看起来具有正常功能,但实际上隐藏着很多用户不希望功能的程序。通常由控制端和被控制端两端组成。
例:灰鸽子(能够监控摄像头、桌面、键盘输入等)、冰河等
木马和前两种恶意代码的主要区别在于表面的伪装能力。实际上破坏的能力与前两种相当。百度百科给出的定义是:木马病毒是指隐藏在正常程序中的一段具有特殊功能的恶意代码,是具备破坏和删除文件、发送密码、记录键盘和攻击Dos等特殊功能的后门程序。
4. 后门
使得攻击者可以对系统进行非授权访问的一类程序。
例:Bits、WinEggDrop、Tini等
木马和后门的区别在于隐蔽性和欺骗性上。后门存在本来就是要隐藏自身,便于攻击者随时访问;而木马有时甚至会诱惑用户去运行某些程序。
5.RootKit
通过修改现有的操作系统软件,使攻击者获得访问权并隐藏在计算机中的程序。
例:RootKit、Hkdef、ByShell等
6. 僵尸程序,恶意网页,拒绝服务程序,黑客工具,广告软件,间谍软件等其他恶意代码
- 僵尸程序:是指恶意控制功能的程序代码,能够自动执行预定义的功能、可以被预定义的命令控制
- 间谍软件:以主动收集用户个人信息、相关机密文件或隐私数据为主,搜集到的数据会主动传送到指定服务器。
- 广告软件:未经用户允许,下载并安装或与其他软件捆绑通过弹出式广告或以其他形式进行商业广告宣传的程序。
- 流氓软件:具有一定的实用价值但具备电脑病毒和黑客软件的部分特征的软件(特别是难以卸载),处在合法软件和电脑病毒之间的灰色地带。
- Exploit:精心设计的用于利用特定漏洞以对目标系统进行控制的程序。
- 黑客工具:各类直接或间接用于网络和主机渗透的软件,如各类扫描器、后门植入工具、密码嗅探器、权限提升工具等
注意诸如黑客工具、广告软件等也属于恶意代码。很多广告软件强行向用户推送广告,以此来获得收益,在用户眼中算是可见的比较“流氓”的一种行为。而黑客工具也是恶意代码的原因是其“恶意”的对象可能不是本机而是被攻击的对象。要注意广告软件和流氓软件的区别:流氓软件——虽然流氓,但你还是需要,即存在一定价值;广告软件:可能没有价值,而且还随便下东西弹窗。
练习题
4. 根据下列对于恶意代码的描述,判断其属于哪种恶意代码:
(1) 某同学将U盘插入学校工程实训中心的电脑后,发现U盘中所有文件夹后标注文件类型为“exe可执行文件”,点击后电脑中关键数据被窃取。__________
(2) 某人在手机上通过QQ邮箱下载apk文件并安装后,QQ号被盗。__________
(3) 专门用于向指定IP地址发动DDoS攻击的程序__________
(4) 各大高校频频爆出的“O泡果奶事件”中涉及的程序__________
(5) 能够在后台下载各类广告游戏软件的某款盗版软件__________
(6) 某人打开电脑后发现鼠标与键盘无法控制电脑,似乎有人远程控制电脑进行各种违法操作。经过紧急处理后发现有一个恶意代码程序将自身设置为开机自启动。__________
(7) 某公司企业员工运行某个常用程序后发现服务器突然遭受大量DDoS攻击,电脑中弹出索要钱财的对话框。__________
(8) 某同学在靶场攻击服务器靶机的某个含有漏洞的服务时专门编写的程序__________
(9) 由某国政府开发的用于窃听电脑语音通话的软件__________
答案:木马、木马、黑客工具、木马、广告软件、蠕虫、病毒、Exploit、间谍软件
3.4 相关法律条文
第二百八十五条 违反国家规定,侵入国家事务、国防建设、尖端科学技术领域的计算机信息系统的,处三年以下有期徒刑或者拘役。
第二百八十六条 违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的,处五年以下有期徒刑或者拘役;后果特别严重的,处五年以上有期徒刑。
违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,依照前款的规定处罚。
故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后果严重的,依照第一款的规定处罚。
刑法修正案(七):在刑法第二百八十五条中增加两款作为第二款、第三款:“违反国家规定,侵入前款规定以外的计算机信息系统或者采用其他技术手段,获取该计算机信息系统中存储、处理或者传输的数据,或者对该计算机信息系统实施非法控制,情节严重的,处三年以下有期徒刑或者拘役,并处或者单处罚金;情节特别严重的,处三年以上七年以下有期徒刑,并处罚金。