恶意代码与安全漏洞.ppt

上传人:b****1 文档编号:1722502 上传时间:2022-10-23 格式:PPT 页数:127 大小:5.28MB
下载 相关 举报
恶意代码与安全漏洞.ppt_第1页
第1页 / 共127页
恶意代码与安全漏洞.ppt_第2页
第2页 / 共127页
恶意代码与安全漏洞.ppt_第3页
第3页 / 共127页
恶意代码与安全漏洞.ppt_第4页
第4页 / 共127页
恶意代码与安全漏洞.ppt_第5页
第5页 / 共127页
点击查看更多>>
下载资源
资源描述

恶意代码与安全漏洞.ppt

《恶意代码与安全漏洞.ppt》由会员分享,可在线阅读,更多相关《恶意代码与安全漏洞.ppt(127页珍藏版)》请在冰豆网上搜索。

恶意代码与安全漏洞.ppt

恶意代码与安全漏洞,课程内容,2,知识域:

恶意代码,知识子域:

恶意代码基本概念原理了解恶意代码的历史和发展趋势理解常见恶意代码病毒、蠕虫、木马传播方式和危害的特点了解常见恶意代码变形、Rootkit等技术的原理,3,恶意代码的历史与发展趋势,恶意代码(UnwantedCode,MaliciousSoftware,Malware,Malicouscode)是指没有作用却会带来危险的代码。

通常把未经授权便干扰或破坏计算机系统/网络功能的程序或代码(一组指令)称之为恶意程序。

一组指令可能包括:

二进制文件、脚本语言或宏语言等。

4,恶意代码发展史,1949:

冯诺依曼在复杂自动机组织论提出概念1960:

生命游戏(约翰康维)磁芯大战(道格拉斯.麦耀莱、维特.维索斯基、罗伯.莫里斯)1973:

真正的恶意代码在实验室产生1981年-1982年:

在APPLE-II的计算机游戏中发现Elkcloner,5,恶意代码发展史,1986年第一个PC病毒:

Brainvirus1988年MorrisInternetworm6000多台1990年第一个多态病毒1991年virusconstructionset-病毒生产机1994年GoodTimes(joys)1995年首次发现macrovirus1996年netcat的UNIX版发布(nc)1998年第一个Javavirus(StrangeBrew),6,罗伯特.莫里斯,恶意代码发展史,1998年netcat的Windows版发布(nc)1998年backorifice(BO)/CIH破坏硬件1999年melissa/worm(macrovirusbyemail)1999年backorifice(BO)forWIN2k1999年DOS/DDOS-DenialofServiceTFT/trin001999年knark内核级rootkit(linux)2000年loveBug(VBScript)2001年CodeRedworm(overflowforIIS)2001年Nimda-worm(IIS/webbrowser/,7,恶意代码发展史,outlook/fileshareetc.)2002年setiri后门2002年SQLslammer(sqlserver)2003年hydan的steganography工具2003年MSBlaster/Nachi2004年MyDoom/Sasser2006年熊猫烧香2010年Stuxnet(工业蠕虫),8,恶意代码的发展趋势,种类越来越模糊不清传播采用多种模式或者利用多个漏洞多平台、多应用软件服务端和客户端都遭受攻击,利用客户端软件传播的恶意代码越来越多目的性、功利性更为突出攻击者越来越小心、恶意代码隐蔽性越来越强新的应用衍生出新的恶意代码,针对手机、新型网络应用的恶意代码越来越多,9,恶意代码分类,10,常见恶意代码传播方式及危害,11,病毒的传播方式,12,病毒的危害,13,蠕虫的传播方式,14,蠕虫的危害,严重威胁网络安全蠕虫爆发占用大量网络资源,导致网络瘫痪形成危害严重的僵尸网络,被作者用来发动任何攻击危害个人信息安全泄露个人隐私,15,木马的传播方式,漏洞传播系统漏洞;浏览器漏洞(网页木马);其他应用软件漏洞(PDF、DOCetc)伪装传播捆绑;伪装成图片、文本等;合法软件社会工程电子邮件论坛SNS聊天软件,16,木马的危害,监视用户的操作包括:

用户主机的进程、服务、桌面,键盘操作、摄像头等等窃取用户隐私包括:

浏览的网页,聊天记录,输入的银行帐户密码,游戏帐户密码,窃取用户敏感文件让用户主机执行任意指令使用户主机沦为傀儡主机,接受并执行控制主机的指令你能做到的木马都有可能做到,17,恶意代码实现关键技术,恶意代码生存技术恶意代码隐蔽技术恶意代码攻击技术及植入手段,18,恶意代码关键技术,一个好的恶意代码,首先必须具有强大的生存能力和良好好隐蔽性,不能轻松被杀毒软件、安全工具或者用户察觉。

然后,必须具有良好的攻击性,即能将自己植入到目标系统。

关键技术:

恶意代码生存技术恶意代码隐蔽技术恶意代码攻击技术及植入手段,19,恶意代码生存技术,生存技术主要包括4方面:

反跟踪技术加密技术模糊变换技术自动生产技术反跟踪技术可以减少被发现的可能性,加密技术是恶意代码自身保护的重要机制。

20,恶意代码生存技术-反跟踪技术,恶意代码采用反跟踪技术可以提高自身的伪装能力和防破译能力,增加检测与清除恶意代码的难度。

目前常用的反跟踪技术有两类反动态跟踪技术反静态分析技术。

21,反跟踪技术-反动态跟踪技术,反动态跟踪技术主要包括4方面内容:

禁止跟踪中断。

封锁键盘输入和屏幕显示,破坏各种跟踪调试工具运行的必需环境;检测跟踪法。

其它反跟踪技术。

22,反跟踪技术-反静态分析技术,反静态分析技术主要包括两方面内容:

对程序代码分块加密执行伪指令法(JunkCode),23,恶意代码生存技术-加密技术,加密技术是恶意代码自我保护的一种手段,加密技术和反跟踪技术的配合使用,使得分析者无法正常调试和阅读恶意代码,不知道恶意代码的工作原理,也无法抽取特征串。

从加密的内容上划分,加密手段分为三种:

信息加密数据加密程序代码加密,24,恶意代码隐蔽技术,利用模糊变换技术,恶意代码每感染一个客体对象时,潜入宿主程序的代码互不相同。

目前,模糊变换技术主要分为5种:

指令替换技术指令压缩技术指令扩展技术伪指令技术重编译技术,25,恶意代码隐蔽技术-自动生产技术,恶意代码自动生产技术是针对人工分析技术的。

多态变换引擎可以使程序代码本身发生变化,并保持原有功能。

26,恶意代码隐蔽技术-隐藏技术,隐藏通常包括本地隐藏和通信隐藏其中本地隐藏主要有文件隐藏、进程隐藏、网络连接隐藏、内核模块隐藏、编译器隐藏等通信隐藏主要包括通信内容隐藏和传输通道隐藏RootKit技术恶意代码的隐藏技术RootKit技术相关,27,恶意代码隐蔽技术-本地隐蔽技术,本地隐蔽是指为了防止本地系统管理人员觉察而采取的隐蔽手段。

本地系统管理人员通常使用“查看进程列表”,“查看目录”,“查看内核模块”,“查看系统网络连接状态”等管理命令来检测系统是否被植入了恶意代码。

文件隐蔽进程隐蔽网络连接隐蔽编译器隐蔽内核模块隐蔽,28,恶意代码隐蔽技术-网络隐蔽技术,使用加密算法对所传输的内容进行加密能够隐蔽通信内容。

隐蔽通信内容虽然可以保护通信内容,但无法隐蔽通信状态,因此传输信道的隐蔽也具有重要的意义。

对传输信道的隐蔽主要采用隐蔽通道技术。

隐蔽通道分为两种类型:

存储隐蔽通道一个存储空间可悲两个进程访问时间隐蔽通道一个进程对系统性能产生的影响可以被另外一个进程观察到并且可以利用一个时间基准进行测量由此形成传递通道,29,恶意代码隐蔽技术-RooTkit技术,什么是RootKit技术Rootkit是指其主要功能为隐藏其他程式进程的软件,可能是一个或一个以上的软件组合;广义而言,Rootkit也可视为一项技术。

Rootkit一些知识Windows平台上最早发现于1999(NTRootkit,Hoglund):

不同于病毒、一般是非破坏性的工具通常运行在核心(更易隐藏)通常被黑客手工安装确保能再次进入系统隐蔽地捕获密码,键击等,30,恶意代码攻击技术及植入手段,常见的攻击技术包括:

进程注入技术三线程技术端口复用技术超级权限技术端口反向连接技术,31,恶意代码攻击技术-进程注入技术,进程注入技术就是将这些与服务相关的可执行代码作为载体,恶意代码程序将自身嵌入到这些可执行代码之中,实现自身隐藏和启动的目的例如:

DLL注入,32,恶意代码攻击技术-三线程技术,三线程技术就是指一个恶意代码进程同时开启了三个线程,其中一个为主线程,负责远程控制的工作。

另外两个辅助线程是监视线程和守护线程,监视线程负责检查恶意代码程序是否被删除或被停止自启动。

守护线程注入其它可执行文件内,与恶意代码进程同步,一旦进程被停止,它就会重新启动该进程,并向主线程提供必要的数据,这样就能保证恶意代码运行的可持续性。

33,恶意代码攻击技术-端口复用技术,端口复用技术,系指重复利用系统网络打开的端口(如25、80、135和139等常用端口)传送数据,这样既可以欺骗防火墙,又可以少开新端口。

端口复用是在保证端口默认服务正常工作的条件下复用,具有很强的欺骗性。

34,icmp,http,服务器,客户机,80,应用服务,恶意代码攻击技术-超级权限技术,为了对抗反恶意代码软件,恶意代码采用超级权限技术限制反恶意代码的工作以保护自身例:

加载为设备驱动技术,35,恶意代码通过将自身注册成为设备驱动,从而获得较高权限,阻止反病毒软件对它的查杀并干扰反恶意代码软件的正常运行,恶意代码攻击技术-端口反向连接技术,端口反向连接技术,系指恶意代码攻击的服务端(被控制端)主动连接客户端(控制端)。

36,连接请求,80,连接请求,攻击者,受害者,受害者,攻击者,知识域:

恶意代码,知识子域:

恶意代码防御技术掌握恶意代码预防的策略、意识、技术和工具了解恶意代码发现和分析技术了解恶意代码清除技术,37,恶意代码防范技术,目前,恶意代码防御技术主要分为两方面:

基于主机的恶意代码防御技术基于网络的恶意代码防御技术,38,基于主机恶意代码防御,基于主机的恶意代码防范方法主要包括:

基于特征的扫描技术校验和沙箱技术安全操作系统对恶意代码的防范,39,基于主机恶意代码防御-特征扫描,目前恶意代码检测常用技术模式匹配恶意代码特征文件(病毒库)扫描(特征串匹配过程)更新特征库(更新特征库)目前广泛应用于反病毒引擎中优势准确、易于管理、误报率低不足效率问题(特征库不断庞大、依赖厂商)滞后(先有病毒后有特征库),40,基于主机恶意代码防御-特征扫描,41,基于主机恶意代码防御-校验和,利用加密技术中信息资源完整性保护的技术相关技术Hash值和循环冗余码等生成确认安全的文件校验数据,然后周期使用校验和检测文件是否被改变运用校验和法检查恶意代码有3种方法在恶意代码检测软件中设置校验和法在应用程序中嵌入校验和法将校验和程序常驻内存,42,基于主机恶意代码防御-沙箱技术,沙箱技术指根据系统中每一个可执行程序的访问资源,以及系统赋予的权限建立应用程序的“沙箱”,限制恶意代码的运行。

43,应用服务,应用软件,基于网络的恶意代码防御,由于恶意代码具有相当的复杂性和行为不确定性,恶意代码的防范需要多种技术综合应用,包括:

恶意代码监测与预警恶意代码传播抑制恶意代码漏洞自动修复恶意代码阻断等基于网络的恶意代码防范方法包括:

恶意代码检测防御恶意代码预警常见的恶意代码检测防御如蜜罐技术,44,基于HoneyPot的检测防御,早期HoneyPot主要用于防范网络黑客攻击。

ReVirt是能够检测网络攻击或网络异常行为的HoneyPot系统。

45,恶意代码分析技术,46,恶意代码静态分析,什么是静态分析静态常规信息分析静态代码分析常用静态分析工具,47,什么是静态分析,静态分析是在尽量不运行或调试恶意代码的前题下,尽可能多的收集此恶意代码的相关信息,以找出此恶意代码的功能与作用或为动态分析时找出恶意代码的功能做准备。

静态分析主要分为两个方向,一个是静态常规信息分析,另一个是静态代码分析。

48,静态分析-常规分析,49,静态分析-代码分析,50,静态分析-格式分析,分析样本文件类型:

文本文件,PE文件,脚本文件等。

例如:

PE文件分析加壳分析判断是否加壳(能否知道编写语言)判断加壳类型(用什么工具加壳)常用工具PEID附加数据分析可以通过PE文件的区段来确定是否有附加进去的数据。

Stud_PE,查看区段,Uedit32查看原始文件信息等获取该样本的编写语言,51,静态分析-PE信息,52,静态分析-API查看,53,常用静态分析工具,C32ASM静态反汇编工具W32dsm静态反汇编工具IDA静态反汇编工具其它常用工具,54,恶意代码动态分析,中国安天实验室,55,恶意代码动态分析步骤,格式分析编写

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1