文章目录
一. 恶意代码基础知识
1.基础知识:
- 恶意代码的定义:使计算机按照攻击者的意图运行以达到恶意目的的指令集合。
指令集合:n二进制执行文件,脚本语言代码,宏代码,寄生在文件、启动扇区的指令流。
- 宏代码:
2.恶意代码类型
- 特洛伊木马:伪装成有用软件,隐藏恶意目标,欺骗用户安装执行。
- 僵尸程序:使用一对多的命令与控制机制组成僵尸网络。
- 内核套件(rootkit):通过替换或修改系统关键可执行文件(用户态),或者通过控制操作系统内核(内核态),用以获取并保持最高控制权(rootaccess)。
- 融合型恶意代码:融合上述多种恶意代码技术,构成更具破坏性的恶意代码形态。
3.分类
- 计算机病毒:一组可以自行复制的计算机指令或者程序代码。具有破坏性,复制性,传染性。
- 蠕虫:一般为不需要宿主的单独文件,通过网络传播,自动复制,通常无需人为交互就可以传播感染
- 启动器:从远程主机下载到本地执行的轻量级恶意代码,不需要或仅需要极少的人为干预。代表性的开发工具有:JavaScript,VBScript,Java,以及ActiveX。启动其他恶意程序的恶意代码。
- 后门:自身会通过一段代码(shellcode代码)进行多层次注入和代码变换,以防止受感染操作系统中防病毒软件的查杀
会通过创建虚拟桌面,多次切换桌面,阻碍受感染操作系统中防病毒软件的调试运行
会迫使受感染操作系统在后台连接恶意攻击者指定的Web服务器,并上传本机信息到远程控制端
4.恶意代码技术新趋势
Rootkit和Bootkit攻击技术
编程语言多样化
恶意软件加壳技术(DexProtect、apkprotect)
二. 恶意代码分析技术介绍
1.恶意代码分析关键点
构建受控的分析环境,通过静态或者动态方法实行分析
2.静态分析
- 通过反病毒引擎扫描识别已知的恶意代码家族和变种名。
- 逆向分析恶意代码模块构成,内部数据结构,关键控制流程等,理解恶意代码机理,并提取特征码用于检测。
3.动态分析
通过在受控环境中执行目标代码,以获取目标代码的行为及运行结果。
4.恶意代码静态分析方法列表
5.恶意代码动态分析方法列表
6.恶意代码分析目标
a 为网络入侵事件的响应提供所需信息
b 确定到底发生了什么
c 确保定位出所有受感染的主机和文件
d 确定恶意代码可以做什么
e 分析出主机特征和网络特征,以便检测
的响应提供所需信息
b 确定到底发生了什么
c 确保定位出所有受感染的主机和文件
d 确定恶意代码可以做什么
e 分析出主机特征和网络特征,以便检测