计算机病毒与恶意代码期末总结
作者:互联网
写在前面
所用教材:刘功申等人编著的第四版
博客地址:https://blog.csdn.net/zss192
说明:博客为根据老师所画重点有针对性的总结,供个人复习使用,仅供参考
第一章 恶意代码概述
1.恶意代码的共同特征(P3选)
- 目的性:基本特征,是判别程序是否为恶意代码的最重要的特征,也是法律上判断恶意代码的标准。
- 传播性:恶意代码体现其生命力的重要手段。
- 破坏性:恶意代码的表现手段。
2.恶意代码种类(P9选)
- 普通计算机病毒
- 蠕虫
- 特洛伊木马
- RootKit工具
- 流氓软件
- 间谍软件
- 恶意广告
- 逻辑炸弹
- 僵尸网络
- 网络钓鱼
- 恶意脚本
- 垃圾短信
- 勒索软件
- 移动终端恶意代码
3.恶意代码发作后的现象(P18选哪个不是)
- 无法启动系统
- 系统文件丢失或被破坏
- 部分BIOS程序混乱
- 部分文档丢失或被破坏
- 部分文档自动加密
- 目录结构发生混乱
- 网络无法提供正常的服务
- 浏览器自动访问非法网站
4.与病毒现象类似的故障(P19选)
- 硬件故障
- 系统的硬件配置
- 电源电压不稳定
- 接触不良
- 驱动器故障
- CMOS的问题
- 软件故障
- 软件程序已被破坏
- 软件与操作系统不兼容
- 引导过程故障
- 使用不同的编辑软件导致错误
推测与第3点结合出题,给出4个选项,其中混着一个硬件故障或软件故障,让选择哪个不是恶意代码的发作现象
第二章 恶意代码模型及机制
1.计算机病毒的组成(P48选)
- 引导模块
- 引导过程:驻留在内存中、窃取系统控制权、恢复系统功能
- 感染模块
- 传染过程
- 被动传染:随着复制或网络传输工作的进行而进行
- 主动传染:在系统运行时,进入系统的内存储器,常驻内存监视系统的运行,用多种方式传染
- 传染方式
- 立即传染:病毒在被执行的瞬间,抢在宿主程序开始执行前感染磁盘上的其他程序,然后再执行宿主程序
- 驻留内存伺机感染:在执行程序或浏览网页时传染磁盘上的程序,在宿主程序运行结束后仍可活动,直至关闭计算机
- 传染过程
- 破坏模块
- 不一定都是删除磁盘文件,也有可能是显示一串无用的信息或干扰用户工作
- 破坏行为越来越隐秘,甚至窃取信息后会自动销毁
- 触发模块
- 病毒常用的触发条件:日期触发、时间触发、键盘触发、感染触发、启动触发、访问磁盘次数触发、CPU型号/主板型号触发
2.世界上第一台计算机ENIAC是(随机访问计算机)模型(P51)
第三章 传统计算机病毒
1.PE文件结构及其运行原理(P66)
PE(Portable Executable,可移植的执行体)是Win32环境自身所带的可执行文件格式。它的一些特性继承自UNIX的COFF(Common Object File Format)文件格式。
可移植的执行体意味着此文件格式是跨Win32平台的,即使 Windows运行在非 Intel的CPU上,任何Win32平台的PE装载器都能识别和使用该文件格式。
当然,移植到不同的CPU上PE执行体必然得有一些改变。除VxD和16位的DLL外,所有Win32执行文件都使用PE文件格式。因此,研究PE文件格式是我们洞悉 Windows结构的良机。
2.病毒感染其他文件的步骤(P71简答)
(1)判断目标文件开始的两个字节是否为MZ
(2)判断PE文件标记"PE"
(3)判断感染标记,如果已被感染过则跳出继续执行宿主程序,否则继续
(4)获得数据目录的个数(每个数据目录信息占8个字节)
(5)得到节表起始位置(数据目录的偏移地址+数据目录占用的字节数=节表起始位置)
(6)得到节表的末尾偏移(紧接其后用于写入一个新的病毒节信息,节表起始位置+节的个数*每个节表占用的字节数28H=节表的末尾偏移)
(7)开始写入节表
(8)在新添加的节中写入病毒代码
(9)将当前文件位置设为文件末尾
必须背会,括号里的记不住可不写
3.Ring3与Ring0(P72)
-
Windows操作系统运行在保护模式,保护模式将指令执行分为4个特权级:Ring0,Ring1,Ring2,Ring3
-
Ring0级别最高,可以执行特权指令(OS使用);Ring3级别最低(应用程序使用)
4.什么是宏病毒(P73)
宏病毒是一种寄存在文档或模板的宏中的计算机病毒。一旦打开这样的文档,其中的宏就会被执行,于是宏病毒就会被激活,转移到计算机上,并驻留在Normal模板上。
宏:一些命令组织在一起,作为一个独立单元完成一个特定任务
经典宏病毒:美丽莎(Melissa)、台湾NO.1B、O97M.Tristate.C病毒
第五章 特洛伊木马
1.什么是特洛伊木马(P122)
特洛伊木马(Trojan Horse)是一种与远程计算机之间建立起连接,使远程计算机能够通过网络控制用户计算机系统并且可能造成用户的信息损失、系统损坏甚至瘫痪的程序。
2.一个完整的木马系统的组成(P122简答)
- 硬件部分:建立木马连接所必需的硬件实体。包括控制端、服务端、Internet
- 软件部分:实现远程控制所必需的软件程序。包括控制端程序、木马程序、木马配置程序
- 具体连接部分:通过Internet在服务端和控制端之间建立一条木马通道所必需的元素。包括控制端IP和服务端IP、控制端端口和木马端口
3.木马程序的基本特征(P123)
欺骗性、隐蔽性(木马和远程控制软件的区别)、自动运行性、自动恢复性、功能的特殊性
4.什么是网站挂马技术(P139)
网页挂马就是攻击者通过在正常的页面中(通常是网站的主页)插入一段恶意代码。浏览者在打开该页面的时候,这段代码被执行,然后把某木马的服务器端程序或种子下载到浏览者本地并运行,进而控制浏览者的主机。
常见的有框架挂马、js挂马、图片伪装挂马、网络钓鱼挂马、伪装挂马
5.什么是隐藏技术(P143)
木马为了生存,使用许多技术隐藏自己的行为(进程、连接和端口)
主要的隐藏技术有:反弹式木马技术、用ICMP方法隐藏连接、隐藏端口、Windows NT系统下木马进程的隐藏、远程线程技术
第七章 蠕虫
1.蠕虫的分类(P187)
- 一种是面向企业用户和局域网的,其利用系统漏洞,主动进行攻击,可使整个互联网瘫痪。
- 爆发具有一定的突然性,查杀这种病毒并不是很难
- 以红色代码、尼姆达以及SQL蠕虫王为代表
- 另外一种是针对个人用户的,通过网络(主要是电子邮件、恶意网页形式)迅速传播的蠕虫病毒
- 比较复杂多样,常利用社会工程学欺诈和诱骗用户,造成损失非常大且很难根除
- 以爱虫病毒、求职信病毒为代表
蠕虫:一种能够利用系统漏洞通过网络进行自我传播的恶意程序
2.什么是RPC漏洞(P192)
远程过程调用RPC(Remote Procedure Call)是 Windows操作系统使用的一个协议,提供了一种进程间通信机制,通过这一机制,在一台计算机上运行的程序可以顺畅地执行某个远程系统上的代码。RPC漏洞则是利用RPC的漏洞。
RPC中处理通过TCP/IP的消息交换的部分存在一个漏洞(错误地处理格式不正确的消息造成)
RPC漏洞影响分布式组件对象模型(DCOM)与RPC间的一个接口,此接口侦听135端口
Samba在处理用户数据输入时存在输入验证漏洞,攻击者可执行任意命令
第八章 勒索型恶意代码
1.勒索型恶意代码加密算法(P212)
对称加密算法:AES(使用最多),非对称加密算法:RSA
摘要:用Hash函数(也称散列函数或哈希函数)将任意长度的数据变成固定长度的数据
第九章 其他恶意代码
1.流氓软件的定义(P227简答)
第一个定义:流氓软件是指具有一定的实用价值但具备计算机恶意代码和黑客的部分行为特征的软件。它处在合法软件和恶意代码之间的灰色地带,使用户无法卸载,并强行弹出广告和窃取用户的私人信息。
第二个定义:流氓软件是介于恶意代码和正规软件之间,同时具备正常功能(下载、媒体播放等)和恶意行为(弹广告、开后门)的软件,给用户带来实质危害。
2.Rootkit的定义(P243)
Rootkit是攻击者用来隐藏自己的踪迹和保留root访问权限的工具。Rootkit一般都和木马、后门等其他恶意程序结合使用。
3.APT的攻击过程(P246简答)
- 第一阶段:定向信息收集:有针对性的搜集系统和员工信息
- 第二阶段:单点攻击突破:采用一切可以采用的手段攻击员工的个人计算机,设法实现单点突破
- 第三阶段:构建通道:建立长期的联系通道,通过该通道发送攻击指令、传输数据等
- 第四阶段:横向渗透:以员工个人计算机为跳板,在系统内部横向渗透,以攻陷更多的个人计算机和服务器
- 第五阶段:目标行动:获得有价值的数据并偷运到由攻击者控制的外部
高级持续性威胁(APT)是利用先进的攻击手段对特定目标进行长期持续型网络攻击的攻击形式
4.APT的特征(P248简答)
- 高级性:APT攻击的方式相对于其他攻击形式更为高级,体现在3个方面
- 高级的收集手段
- 高级的攻击手法
- 威胁高级的数据
- 持续性:持续性是APT攻击的最大威胁,可以包括以下几点
- 持续潜伏
- 持续攻击
- 持续欺骗
- 持续控制
第十章 恶意代码防范技术
1.恶意代码防范思路(P256)
(1)检测:利用静态检测、动态检测等技术,通过手工检测或自动检测等方法来识别恶意代码
(2)清除:根据恶意代码的类型,选择不同的方法来清除恶意代码;
(3)预防:通过个人防火墙和系统加固等技术来防止恶意代码对系统进行传染和破坏(被动)
(4)免疫:通过计算机系统本身的技术增加自己的防范能力,是一种主动的预防技术
(5)数据备份及恢复:及时对数据进行备份、遇到故障时保证数据可恢复
(6)防范策略:以单位实际情况为主要依据形成一套好的管理制度和策略
第十一章 常用杀毒软件及其解决方案
1.杀毒软件必备功能(P287)
查杀能力、防范新恶意代码的能力、备份和恢复能力、实时监控能力、升级能力、智能安装能、简单易用、资源占用情况、兼容性、价格、厂商的实力
第十二章 恶意代码防治策略
1.恶意代码防止策略的基本准则(P302)
- 拒绝访问能力:来历不明的软件不得进入计算机系统
- 检测能力:系统应设置检测恶意代码的机制来阻止外来恶意代码的侵犯
- 控制传播的能力:应阻止恶意代码在系统中任意传播
- 清除能力:如果恶意代码突破了系统的防护,即使传播受到了控制,也要有相应的措施将它清除
- 恢复能力:系统应提供一种高效的方法来恢复被破坏的数据,将损失减到最少
- 替代操作:系统未恢复前用替代系统工作,等问题解决后再换回来
2.恶意代码的防治策略(P303简答)
- 国家层面
- 完善相关法律法规及其贯彻落实工作
- 在各主干网络建立恶意代码预警系统
- 建立多层次恶意代码应急体系
- 建立动态的系统风险评估措施
- 建立恶意代码事故分析制度
- 制定完备的备份和恢复计划
- 提高国内运营商自身的安全性
- 加强信息安全培训
- 加强技术防范措施
- 单机用户
- 一般措施
- 安装操作系统后第一时间进行系统升级
- 使用高强度的口令并定定期更换
- 及时安装系统补丁
- 重要数据应当留有备份
- 选择经权威机构认证的安全防范软件
- 使用个人防火墙保障系统的安全性
- 不需要使用网络时,就不要接入互联网
- 设置杀毒软件的邮件自动杀毒功能
- 正确配置恶意代码防治产品
- 充分利用系统提供的安全机制,正确配置系统
- 定期检查敏感文件
- 个人用户上网基本策略
- 关闭浏览器cookie选项
- 使用个人防火墙
- 浏览电子商务网站尽可能使用安全的连接方式
- 不透漏关键信息
- 避免使用过于简单的密码
- 不要随意打开电子邮件附件
- 定期扫描计算机并查找安全漏洞
- 使用软件的稳定版本并及时安装补丁
- 尽量关闭不需要的组件和服务程序
- 尽量使用代理服务器上网
- 一般措施
应该不用记完,每个大点记住几个小点就行,尽量都记住
其它知识点
详细内容看实验文档
1.什么是符号文件
符号文件(Symbol Files)是一个数据信息文件。
它包含了应用程序二进制文件(比如:EXE、DLL等)调试信息,专门用来作调试之用,最终生成的可执行文件在运行时并不需要这个符号文件,但你的程序中所有的变量信息都记录在这个文件中。所以调试应用程序时,这个文件是非常重要的。
符号文件可能包含:全局变量、局部变量、函数名称和其入口点的地址、帧指针省略 (FPO) 记录、源行号,其中每个项分别称为一个符号。
在 Windows 系统中,符号文件以 .pdb 为扩展名
windbg调试器键入ctrl+s打开符号表路径设置
windbg命令行下载符号文件(.sympath设置加载路径,也可按上图那样设置路径)
.sympath srv*c:\MyServerSymbols*https://msdl.microsoft.com/download/symbols
.reload /f
2.用户模式调试和内核模式调试的区别
用户模式调试是在Ring3级别调试,而内核模式调试在Ring0级别调试
如WinDbg是由Microsoft开发的内核模式调试器,可用于调试运行它的操作系统本身。这意味着它可以调试内核代码,即运行在Ring 0中的特权代码。
而OllyDbg是一个用户模式调试器,它只能调试用户模式的可执行文件,例如Exe。
内核模式调试环境通常有两台计算机:主计算机和目标计算机,二者通过以太网电缆连接,也可以用命名管道连接(如VMware)
3.windbg串口(串行端口)问题
windbg内核调试使用虚拟机调试时需要设置串口
管道名称:\\.\pipe\com1(注意打印机会占用端口1,若使用端口1需先删除打印机设备)
主计算机:选择从客户端到一个虚拟机器
目标计算机:选择从服务器到一个虚拟机器
调试机中win+R键入c:\boot.ini打开系统启动配置.然后添加一行配置,如下
右键windbg快捷方式,选择属性->快捷方式->目标,在后面添加-b -k com:port=1,baud=115200
4.EMACS常用命令(选)
操作 | 按键 |
---|---|
打开文件 | C-x C-f |
保存文件 | C-x C-s |
保存所有文件 | C-x s |
另存为文件 | C-x C-w |
退出Emacs | C-x C-c |
打开SHELL | M-x shell |
执行SHELL命令 | M-! |
粘贴 | C-y |
切换到 EVIL 模式 | M-x evil-mode |
若安装插件,先配置.emacs文件(windows是init.el文件)
运行 M-x package-refresh-contents 刷新插件服务器内容
运行 M-x package-install RET 后输入 M-x evil-org 安装此插件
5.windbg常用命令(选)
命令 | 解释 | 示例 |
---|---|---|
bp | 某个地址下断点 | bp @exentry 、bp 0x88888888 、bp MyApp!Func |
g | 继续执行 | |
bu | 针对某个符号下断点 | bu test1!main 在test1程序的main函数下断点 |
bm | 支持正则表达式断点 | bm *!draw* |
bl | 列出所有断点 | |
bc | 清除断点 | |
ba | 指定内存被访问触发断点 | ba Access Size [地址]:ba w4 0x0483DFE |
!address | 目标进程内存使用 | !address Address |
!address | 将堆栈地址分开 | !address -summary |
!dh | 扩展显示指定映像的头部 | !dh -h 、!dh -f notepad 、!dh ntdll |
!lmi | 某个模块的详细信息 | !lmi ntdll |
lm | 模块及模块的符号加载 | lm 、lm vm test.dll |
x | 检查符号 | x kernel32!Virtual* |
k | 查看线程调用栈 | k |
k | 显示每个函数的前三个参数 | kb |
db | 显示存储在某地址中的数据 | db notepad |
dd | 同上,双字节显示 | db notepad L100 |
dt | 显示结构信息 | dt _PEB |
dt | PE 的结构 | dt -r ntdll!_IMAGE_NT_HEADERS 00fd00f8 |
dx | C++指针计算 | dx -r1 (*((ntdll!_IMAGE_OPTIONAL_HEADER *) 0xfd0110)) |
ed | 修改寄存器的值 | ed esp 00401010 |
r | 显示修改CPU寄存器 | r eax 、r eax=2 |
可能会出的简答汇总
1.病毒感染其他文件的步骤
2.一个完整的木马系统的组成
3.流氓软件的定义
4.APT的攻击过程
5.APT的特征
6.恶意代码的防治策略(国家层面和单机用户层面)
大概率会考这六个,一定要背会,其它的知识点也尽量都背会
标签:文件,计算机,恶意代码,系统,计算机病毒,期末,木马,调试 来源: https://blog.csdn.net/zss192/article/details/118463242