其他分享
首页 > 其他分享> > 计算机病毒与恶意代码期末总结

计算机病毒与恶意代码期末总结

作者:互联网

写在前面

所用教材:刘功申等人编著的第四版

博客地址:https://blog.csdn.net/zss192

说明:博客为根据老师所画重点有针对性的总结,供个人复习使用,仅供参考

第一章 恶意代码概述

1.恶意代码的共同特征(P3选)

2.恶意代码种类(P9选)

3.恶意代码发作后的现象(P18选哪个不是)

4.与病毒现象类似的故障(P19选)

推测与第3点结合出题,给出4个选项,其中混着一个硬件故障或软件故障,让选择哪个不是恶意代码的发作现象

第二章 恶意代码模型及机制

1.计算机病毒的组成(P48选)

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)

4.什么是宏病毒(P73)

宏病毒是一种寄存在文档或模板的宏中的计算机病毒。一旦打开这样的文档,其中的宏就会被执行,于是宏病毒就会被激活,转移到计算机上,并驻留在Normal模板上。

宏:一些命令组织在一起,作为一个独立单元完成一个特定任务

经典宏病毒:美丽莎(Melissa)、台湾NO.1B、O97M.Tristate.C病毒

第五章 特洛伊木马

1.什么是特洛伊木马(P122)

特洛伊木马(Trojan Horse)是一种与远程计算机之间建立起连接,使远程计算机能够通过网络控制用户计算机系统并且可能造成用户的信息损失、系统损坏甚至瘫痪的程序。

2.一个完整的木马系统的组成(P122简答)

3.木马程序的基本特征(P123)

欺骗性、隐蔽性(木马和远程控制软件的区别)、自动运行性、自动恢复性、功能的特殊性

4.什么是网站挂马技术(P139)

网页挂马就是攻击者通过在正常的页面中(通常是网站的主页)插入一段恶意代码。浏览者在打开该页面的时候,这段代码被执行,然后把某木马的服务器端程序或种子下载到浏览者本地并运行,进而控制浏览者的主机。

常见的有框架挂马、js挂马、图片伪装挂马、网络钓鱼挂马、伪装挂马

5.什么是隐藏技术(P143)

木马为了生存,使用许多技术隐藏自己的行为(进程、连接和端口)

主要的隐藏技术有:反弹式木马技术、用ICMP方法隐藏连接、隐藏端口、Windows NT系统下木马进程的隐藏、远程线程技术

第七章 蠕虫

1.蠕虫的分类(P187)

蠕虫:一种能够利用系统漏洞通过网络进行自我传播的恶意程序

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简答)

第十章 恶意代码防范技术

1.恶意代码防范思路(P256)

(1)检测:利用静态检测、动态检测等技术,通过手工检测或自动检测等方法来识别恶意代码
(2)清除:根据恶意代码的类型,选择不同的方法来清除恶意代码;
(3)预防:通过个人防火墙和系统加固等技术来防止恶意代码对系统进行传染和破坏(被动)
(4)免疫:通过计算机系统本身的技术增加自己的防范能力,是一种主动的预防技术
(5)数据备份及恢复:及时对数据进行备份、遇到故障时保证数据可恢复
(6)防范策略:以单位实际情况为主要依据形成一套好的管理制度和策略

第十一章 常用杀毒软件及其解决方案

1.杀毒软件必备功能(P287)

查杀能力、防范新恶意代码的能力、备份和恢复能力、实时监控能力、升级能力、智能安装能、简单易用、资源占用情况、兼容性、价格、厂商的实力

第十二章 恶意代码防治策略

1.恶意代码防止策略的基本准则(P302)

2.恶意代码的防治策略(P303简答)

应该不用记完,每个大点记住几个小点就行,尽量都记住

其它知识点

详细内容看实验文档

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
退出EmacsC-x C-c
打开SHELLM-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 @exentrybp 0x88888888bp 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模块及模块的符号加载lmlm vm test.dll
x检查符号x kernel32!Virtual*
k查看线程调用栈k
k显示每个函数的前三个参数kb
db显示存储在某地址中的数据db notepad
dd同上,双字节显示db notepad L100
dt显示结构信息dt _PEB
dtPE 的结构dt -r ntdll!_IMAGE_NT_HEADERS 00fd00f8
dxC++指针计算dx -r1 (*((ntdll!_IMAGE_OPTIONAL_HEADER *) 0xfd0110))
ed修改寄存器的值ed esp 00401010
r显示修改CPU寄存器r eaxr eax=2

可能会出的简答汇总

1.病毒感染其他文件的步骤

2.一个完整的木马系统的组成

3.流氓软件的定义

4.APT的攻击过程

5.APT的特征

6.恶意代码的防治策略(国家层面和单机用户层面)

大概率会考这六个,一定要背会,其它的知识点也尽量都背会

标签:文件,计算机,恶意代码,系统,计算机病毒,期末,木马,调试
来源: https://blog.csdn.net/zss192/article/details/118463242