《软件安全》课件第7章-恶意代码防范技术.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《软件安全》课件第7章-恶意代码防范技术.pptx》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件安全 软件 安全 课件 恶意代码 防范 技术
- 资源描述:
-
1、软件安全Part章 节07恶意代码防范技术l 20世纪80年代末和20 世纪90年代初,许多技术人员通过自己编写针对特定类型的恶意代码防护程序,来防御专一的恶意代码。l Fredenck Cohen证明,因为无法创建一个单独的程序,能在有限的时间里检测出所有未知的计算机病毒,同样对恶意代码这个问题就无法解决的了。但是,尽管有很多缺点,反恶意代码应用仍然是非常广泛的。l 在检测和清除的最初阶段,由于数量非常少,扩散速度非常缓慢,因此恶意代码非常容易对付7.1 恶意代码防范技术的发展7.1 恶意代码防范技术的发展l 两个著名人物Eugene KasperskyDoctor Soloman7.1 恶
2、意代码防范技术的发展l 中国反恶意代码软件市场的发展在中国,从20世纪90年代开始至今的反恶意代码软件市场,Kill一统天下的结局被终结后,瑞星、江民、金山、交大铭泰等国内反恶意代码软件厂商逐渐把持了大部分市场。疯狂降价、媒体造势、诉讼官司这类已经被国外市场认为过时的交锋,在中国一幕又一幕地上演。现在,更是有外国厂商想进来,中国厂商想出去,两者之间也开始纠缠着牵扯不清的关系。从1988年我国发现第一个传统计算机病毒“小球算起,至今中国计算机反恶意代码之路已经走过了20年。在攻防双方经历了长期的争斗后,恶意代码迄今为止已经超过了100万种,而反恶意代码技术也已经更新了一代又一代。(1)DOS、W
3、indows时代(1988一1998年):防范文件型和引导区型的传统病毒的技术(2)互联网时代(1998一2008年):针对蠕虫、木马的防范技术进行研究(3)今天(2008年以后):恶意代码更加复杂,危害方式也发生了根本转变,主要集中在浪费资源、窃取信息等7.1 恶意代码防范技术的发展l 中国恶意代码防范技术的发展 DOS杀毒时代20世纪80年代末期,最早、最原始的手工杀毒技术,Debug来跟踪清除病毒随着操作系统和恶意代码技术的发展,以及传统病毒逐渐退出历史舞台,普遍应用了IDA、OllyDbg、SoftICE等反编译程序。7.1 恶意代码防范技术的发展l 中国恶意代码防范技术的发展 DOS
4、杀毒时代 恶意代码的增加使得了跟踪越来越不现实,更加便于商业化的防范技术出现了。其中,最具代表性的是特征码扫描技术。再后来,随着恶意代码攻击技术的发展,反恶意代码技术也逐步进化,出现了广谱杀毒技术、宏杀毒技术、以毒攻毒法、内存监控法、虚拟机技术、启发式分析法、指纹分析法、神经网络系统等。7.1 恶意代码防范技术的发展l 中国恶意代码防范技术的发展 Windows时代 随着Windows95和Windows98操作系统的逐渐普及,病毒越来越多,反病毒工程师开始意识到有效防御病毒比单纯杀毒对于用户来讲价值更大。随着这一技术的发展和完善,目前实时监控技术已经非常完善,典型的实时监控系统具有文件监视、
5、邮件监视、网页监视、即时通信监视、木马注册表监视、脚本监视、隐私信息保护七大实时监控功能,从入侵通道封杀病毒,成为目前杀毒软件最主流最具价值的核心技术。衡量一款杀毒软件的防杀能力,也主要通过测试实时监控性能。7.1 恶意代码防范技术的发展l 中国恶意代码防范技术的发展 互联网时代 2003年以来,伴随着互联网的高速发展,恶意代码也进入了愈加猖狂和泛滥的新阶段,并呈现出种类和数量在迅速增长、传播手段越来越广泛、技术水平越来越高、危害越来越大等特征。伴随着恶意代码攻击技术的飞速发展,一些新的恶意代码防范技术也应运而生。7.1 恶意代码防范技术的发展l 中国恶意代码防范技术的发展l 互联网时代1)未
6、知病毒主动防御技术核心原理是依据行为判断,不同于常规的特征扫描技术。主动防御监测系统主要是依靠本身的鉴别系统,分析某种应用程序运行进程的行为,从而判断它的行为,达到主动防御的目的。2)系统启动前杀毒技术BOOTSCAN系统启动前防范技术能够在系统启动之前就开始调用杀毒引擎扫描和清除病毒,而在这一阶段病毒的这些自我保护和对抗反病毒技术的功能还没有运行,因此比较容易清除。7.1 恶意代码防范技术的发展l 7.1.1 中国恶意代码防范技术的发展 互联网时代3)反Rootkit、Hook技术越来越多的病毒开始利用Rootkit技术隐藏自身,利用HOOK技术破坏系统文件,防止被安全软件所查杀。反病毒Ro
7、otkit、反病毒Hook技术能够检测出深藏的病毒文件、进程、注册表键值,并能够阻止病毒利用HOOK技术破坏系统文件,接管病毒钩子,防御恶意代码于系统之外。4)虚拟机脱壳虚拟机的原理是在系统上虚拟一个操作环境,让病毒运行在这个虚拟环境下,在病毒现出原形后将其清除。虚拟机目前主要应用在脱壳方面,许多未知病毒其实是换汤不换药,只是把原病毒加了一个壳,如果能成功地把病毒的这层壳脱掉,就很容易将病毒清除了。7.2 恶意代码防范技术的发展l 3.2.1 中国恶意代码防范技术的发展 互联网时代5)内核级主动防御2008年以来,大部分主流恶意代码技术都进入了驱动级,开始与安全工具争抢系统驱动的控制权,在争抢
8、系统驱动控制权后,转而控制更多的系统权限。内核级主动防御技术能够在CPU内核阶段对恶意代码进行拦截和清除。内核级主动防御系统将查杀模块直接移植到系统核心层直接监控恶意代码,让工作于系统核心态的驱动程序去拦截所有的文件访问,是计算机信息安全领域技术发展新方向。7.1 恶意代码防范技术的发展l 中国恶意代码防范技术的发展(1)基本隔离模型(2)分隔模型(3)流模型(4)限制解释模型7.2 恶意代码防范理论模型7.2.1 F.Cohen提出的“四模型”理论l 对农作物的害虫而言:它们“寄生”在健康的“有机体”上,并且“掠夺”农作物资源;通过有机体间的联系而侵害其他有机体;存在它们出没的“痕迹”;通过
9、伪装隐藏自身;由传染机理和破坏机理所构成,对农作物产生危害。于是,可以:(1)把计算机程序或磁盘文件类比为不断生长变化的植物;(2)把计算机系统比作一个由许多植物组成的田园;(3)把恶意代码看成是侵害植物的害虫;(4)把计算机信息系统周围的环境看作农业事物处理机构。7.2 恶意代码防范理论模型7.2.2 类IPM模型l 农业上的IPM(Integrated Pest Management)模型实质上是一种综合管理方法。它的基本思想是:一个害虫管理系统是与周围环境和害虫种类的动态变化有关的。它以尽可能温和的方式利用所有适用技术和措施治理害虫,使它们的种类维持在不足以引起经济损失的水平之下。l 因
10、此,对恶意代码的遏制就可以借用农业科学管理中已经取得的成就,如IPM模型。虽然两者之间存在很大差别,但它们都是为了解决系统被侵害问题,因此其防治策略和方法类似。7.2 恶意代码防范理论模型7.2.2 类IPM模型l F.Cohen的“四模型理论l 这种理论的实质是限制控制权限和相对地隔离用户尽管要使用的系统共享与恶意代码防护共存在现实中是不可能的,但却启示人们可以通过综合权衡、综合治理来防治恶意代码7.2 恶意代码防范理论模型7.2.3 启示作用l K.Jones和E.White的“类IPM模型”理论l“寻找害虫生命周期中的薄弱环节并进行针对性控制”l 设计并监控防范措施,使之能适应各种变化l
11、 不能仅仅针对那些具有较高价值的文件采取防范恶意代码的措施,而应始终如一地对整个系统进行安全防护l 越是根据文件价值的大小而采取不同的安全措施,恶意代码的平均种类就越会增多l 遏制恶意代码的核心是人或管理上的问题,而不是技术上的问题7.2 恶意代码防范理论模型7.2.3 启示作用l 从恶意代码防范的历史和未来趋势来看,要成功防范越来越多的恶意代码,使用户免受恶意代码侵扰,需要从以下5个层次开展:l 检测l 清除l 预防l 数据备份及恢复l 防范策略7.3 恶意代码防范思路l 恶意代码的检测技术是指通过一定的技术手段判定恶意代码的一种技术。这也是传统计算机病毒、木马、蠕虫等恶徒代码检测技术中最常
12、用、最有效的技术之一。l 其典型的代表方法是特征码扫描法。l 对于移动端来说,商品上架之前对应用进行静态和动态检查,是必要的检测手段7.3 恶意代码防范思路7.3.1 检测l 恶意代码的消除技术是恶意代码检测技术发展的必然结果,是恶意代码传染过程的一种逆过程。l 值得注意的是,随着恶意代码技术的发展,并不是每个恶意代码都能够被详细分析,因此也并不是所有恶意代码都能够成功清除。正是基于这个原因,数据备份和恢复才显得尤为重要。7.3 恶意代码防范思路7.3.2 消除l 恶意代码的预防技术是指通过一定得技术手段防止计算机恶意代码对系统进行传染和破坏,实际上它是一种预先的特征判定技术。l 恶意代码的预
13、防技术主要包括磁盘引导保护、加密可执行程序、读写控制技术和系统监控技术、系统加固技术(如打补丁)等。l 不同系统、不同硬件的预防技术会有不同,例如针对移动智能终端,需要在用户正式使用应用之前,进行权限检查,以减少被恶意代码袭击的可能性。7.3 恶意代码防范思路7.3.3 预防l 数据备份及恢复是在清除技术无法满足需要的情况下而不得不采用的一种防范技术。l 思路:在检测出某个文件被感染了恶意代码后,不去试图清除其中的恶意代码使其恢复正常,而是用事先备份的正常文件覆盖被感染后的文件。l 数据的含义是多方面的,既指用户的数据文件,也指系统程序、关键数据(注册表)、常用应用程序等。l“三分技术、七分管
14、理、十二分数据7.3 恶意代码防范思路7.3.4 数据备份及恢复l 病虫害防治需要指定一定的策略,对抗恶意代码也需要有一定的方法策略l 防范策略是管理手段,而不是技术手段。l 一套好的管理制度和策略应该以单位实际情况为主要依据,能及时反映单位实际情况变化,具有良好的可操作性,由科学的管理条款组成。7.3 恶意代码防范思路7.3.5 防范策略 7.4 恶意代码的检测l 恶意代码的检测如同医生对病人所患疾病进行确诊一般重要,医生只有确诊病人的病情方可对症下药。对于恶意代码,只有检测出其种类、特征才能准确的进行清除,如果盲目的清除可能会对计算机系统或者正常的应用程序造成破坏。7.4.1 恶意代码的常
15、规检测方法l 特征代码法l 比较法l 行为检测法l 软件模拟法l 启发式代码扫描技术7.4 恶意代码的检测7.4.1.1 特征代码法l 将各种已知病毒的特征代码串组成病毒特征代码数据库,这样,可在通过各种工具软件检查、搜索可疑计算机系统(可能是文件、磁盘、内存等)时,用特征代码与数据库中的病毒特征代码逐一比较,就可确定被检计算机系统感染了何种病毒。7.4.1 恶意代码的常规检测方法7.4.1.1 特征代码法l 特征代码法的实现步骤:l 采集已知病毒样本l 抽取病毒样本的特征码l 将特征代码纳入病毒数据库l 检查计算机系统中是否含有病毒数据库中的病毒特征代码7.4.1 恶意代码的常规检测方法7.
16、4.1.1 特征代码法l 特征代码法的优点:l 检测准确,快速,误报率低l 可识别病毒的名称l 根据检测结果,可准确杀毒l 特征代码法的缺点:l 需要花费很多的时间来确定各种病毒的特征代码l 如果一个病毒的特征代码是变化的,这种方法就会失效l 内存中有病毒时一般不能准确检测病毒7.4.1 恶意代码的常规检测方法7.4.1.2 比较法l 比较法通常分为:l 注册表比较法l 文件比较法l 中断比较法l 内存比较法7.4.1 恶意代码的常规检测方法l 注册表比较法l 当前的恶意代码越来越喜欢利用注册表进行一些工作(例如,自加载、破坏用户配置等),因此监控注册表的变化是恶意代码诊断的最新方法之一。目前
17、网上有很多免费的注册表监控工具(例如,RegMon等),利用这些工具可以发现木马、恶意脚本等。l 文件比较法l 普通计算机病毒感染文件,必然引起文件属性的变化,包括文件长度和文件内容的变化。因此,将无毒文件与被检测的文件的长度和内容进行比较,即可发现是否感染病毒。目前的文件比较法可采用FileMon工具。l 中断比较法l 中断技术是传统病毒的核心技术,随着操作系统的发展,这种技术已经被现有恶意代码放弃。中断比较法作为对抗传统病毒的手段之一,已经不适用于对抗现有恶意代码。对中断比较法感兴趣的读者,建议查阅网络资料。l 内存比较法 l 内存比较法用来检测内存驻留型恶意代码。由于恶意代码驻留与内存,
18、必须在内存中申请一定的空间,并对该空间进行占用、保护。通过对内存的检测,观察其空间变化,与正常系统内存的占用和空间进行比较,可以判定是否有恶意代码驻留其间,但无法判定为何种恶意代码。7.4.1.3 行为检测法l 利用恶意代码的特有行为特征监测恶意代码的方法称为行为监测法。通过对恶意代码多年的观察、研究,人们发现恶意代码有一些共性的、比较特殊的行为,而这些行为在正常程序中比较罕见。行为监测法就是监视运行的程序行为,如果发现了恶意代码行为,则报警。这些作为监测恶意代码的行为特征可列举如下。l(1)写注册表l(2)自动联网请求l(3)病毒程序与宿主程序的切换l(4)修改DOS系统数据区的内存总量l(
19、5)对com和exe文件做写入动作l(6)使用特殊中断7.4.1 恶意代码的常规检测方法7.4.1.4 行为检测法l 软件模拟技术又称为“解密引擎”、“虚拟机技术”、“虚拟执行技术”、“软件仿真技术”等。它的运行机制是:一般检测工具纳入软件模拟法,这些工具开始运行时,使用特征代码法检测病毒,如果发现隐蔽式病毒或多态病毒嫌疑时,即启动软件模拟模块,监视病毒的运行,待病毒自身的密码译码以后,再运用特征代码法来识别病毒的种类。7.4.1 恶意代码的常规检测方法7.4.1.5 启发式代码扫描法l 一个应用程序在最初的指令是检查命令行输入有无参数项、清屏和保存原来屏幕显示等,而病毒程序则从来不会这样做,
20、通常它最初的指令是直接写盘操作、解码指令,或搜索某路径下的可执行程序等相关操作指令序列。这些显著的不同之处,一个熟练的程序员在调试状态下可一目了然。启发式代码扫描技术实际上就是把这种经验和知识移植到一个査病毒软件的具体程序中体现。7.4.1 恶意代码的常规检测方法7.4.2 常见恶意代码的检测技术l 上面介绍的病毒的检测方法可以针对所有的病毒。但是因为引导型病毒和文件型病毒具有不同的感染和表现方法,所以对于引导型病毒、文件型病毒以及宏病毒也可分为不同的检测方法。具体可以分为以下几种类型:l(1)引导型病毒的检测方法l(2)文件型病毒的检测方法l(3)宏病毒的检测方法7.4 恶意代码的检测7.4
21、.2.1 引导型病毒的检测技术l 对于引导型病毒,根据它们感染硬盘的主引导扇区或DOS分区引导扇区、软盘的引导扇区,修改内存、FAT、中断向最表、设备驱动程序头等系统数据的特点,前面介绍的比较法基本上就能査出它们的存在。7.4.2常见恶意代码的检测技术7.4.2.1 引导型病毒的检测技术l 例1.“小球”病毒的检测l(1)PCTOOLS 检测法 进人PCTOOLS,查看引导扇区前256 B的前两字节是否为“EB 1C”,然后再看引导扇区的后256 B,注意查看最后的4个字节是否为“57 13 55 AA”。如果査看的结果发现引导扇区的相应偏移地址处有病毒的特征字符串,就可以判定该磁盘已被感染了
22、“小球”病毒。l(2)DEBUG 检测法 运行DEBUG程序后,执行下列DEBUG命令:-L 100 0 0 1 -D 100 L200 上述命令执行吋,屏幕即显示出A驱动器上磁盘引导扇区的内容,可以根据上述检査病毒程序特征字符串的方法,对该引导扇区进行检查。如果要检査硬盘引导扇区的内容,则执行如下命令:-L 100 2 0 1 -D 100 L2007.4.2常见恶意代码的检测技术7.4.2.2 文件型病毒的检测技术l(1)文件基本属性对比l 文件的基本属性包括文件长度、文件创建日期和时间、文件属性(一般属性、只读属性、隐含属性、系统属性)、文件的首簇号、文件的特定内容等。l(2)校验和对比
23、l 对文件内容的全部字节进行某种函数运算,这种运算所产生的适当字节长度的结果就叫做校验和。这种校验和在很大程度上代表了原文件的特征。l(3)文件头部字节对比l 计算文件的校验和要花费较多时间,实际上现有文件型病毒都是通过改变宿主程序的开头部分,来达到先于宿主程序执行的目的。7.4.2常见恶意代码的检测技术7.4.2.3 宏病毒的检测技术l 由于宏病毒的运行特点离不开可供其运行的系统软件(MS Word、PowerPoint 等Office软件)所以宏病毒的检测其实非常容易。只要留意一下常用的Office系统软件是不是出现了一些不正常的现象,就能大概知道计算机是不是染上了宏病毒。l 下面以Wor
24、d宏病毒为例,介绍一些有关于宏病毒的现象。l(1)通用模板中出现宏l(2)无故出现存盘操作l(3)Word功能混乱,无法使用l(4)Word菜单命令丢失l(5)Word文档内容发生变化7.4.2常见恶意代码的检测技术7.4.3 移动端恶意代码检测技术l 面对日益增多的恶意代码及其变种,如何快速有效地检测移动应用中的恶意行为是当前信息安全检测的主要挑战之一。主流的恶意代码检测技术包括基于特征码检测,基于代码分析检测和基于行为监控检测等。l 基于特征码检测l 基于代码分析检测l 基于行为监视检测7.4 恶意代码的检测7.4.3.1 基于特征码检测l 基于特征码检测流程7.4.3 常见恶意代码的检测
25、技术7.4.3.2 基于代码分析检测l 基于代码分析检测流程7.4.3 常见恶意代码的检测技术7.4.3.3 基于行为监视检测l 基于行为监视检测流程7.4.3 常见恶意代码的检测技术7.4.3.4移动恶意代码检测最新研究随着恶意代码数目的增加,未知恶意行为的出现,以及检测躲避技术的应用,恶意代码检测系统需要完成更多更复杂的任务。上述各种恶意代码检测技术各有优缺点,故此综合使用上述恶意代码检测技术的基于多类特征的Android应用恶意行为检测系统成为当前实际应用主流。与此同时,人工智能系统正越来越多地被引入恶意代码检测领域,为恶意代码检测带来了新的思路和方法。目前,主流的应用于恶意代码检测领域
展开阅读全文