恶意代码分析与防范教师:魏先勇请先思考以下3个问题什么是上网安全意识?恶意代码如何进入我们的计算机?恶意代码以什么形式存在于我们的计算机中?一个每天都要遇到的操作1可移动存储设备的使用演示U盘的使用过程一个每天都要遇到的操作2一个通过QQ的病毒用来扩散恶意代码,以创建一个IRC僵尸网络(感染了60,000台主机)。请访问:Wi.ourmid.comWi.ourmid.com一个每天都要遇到的操作3如果您的电脑配有摄像头,在您使用完摄像头之后,您会:()拔掉摄像头,或者将摄像头扭转方向(546人,44.1%)无所谓(693人,55.9%)一个每天都要遇到的操作4还有什么?下载软件的来源:Office文档、图片、视频:设置密码:恶意代码的基本概念恶意代码,又称MaliciousCode,或MalCode,MalWare。其是设计目的是用来实现某些恶意功能的代码或程序。发展及特征长期存在的根源计算机病毒概念≠臭虫(bug)≠生物学中的病毒真的完全不等于吗?它是计算机上的野生动物什么是计算机病毒Virus,拉丁文:毒药就是一段特殊的小程序,由于具有与生物学病毒相类似的特征(潜伏性、传染性、发作期等),所以人们就用生物学上的病毒来称呼它。美国计算机安全专家是这样定义计算机病毒的:”病毒程序通过修改其他程序的方法将自己的精确拷贝或可能演化的形式放入其他程序中,从而感染它们”。病毒的广义和狭义定义狭义:我国出台的《中华人民共和国计算机安全保护条例》对病毒的定义如下:“计算机病毒是指编制、或者在计算机程序中插入的,破坏数据、影响计算机使用,并能自我复制的一组计算机指令或者程序片段代码。”广义:能够引起计算机故障,破坏计算机数据的程序都统称为计算机病毒。恶意代码复制恶意程序需要宿主程序后门逻辑炸弹特洛伊木马病毒细菌独立蠕虫网络恶意代码的分类1.计算机病毒:一组能够进行自我传播、需要用户干预来触发执行的破坏性程序或代码。如CIH、爱虫、新欢乐时光、求职信、恶鹰、rose…2.网络蠕虫:一组能够进行自我传播、不需要用户干预即可触发执行的破坏性程序或代码。其通过不断搜索和侵入具有漏洞的主机来自动传播。利用系统漏洞(病毒不需要漏洞)如红色代码、SQL蠕虫王、冲击波、震荡波、极速波…3.特洛伊木马:是指一类看起来具有正常功能,但实际上隐藏着很多用户不希望功能的程序。通常由控制端和被控制端两端组成。如冰河、网络神偷、灰鸽子……网络恶意代码的分类(续)4.后门:使得攻击者可以对系统进行非授权访问的一类程序。如Bits、WinEggDrop、Tini…5.RootKit:通过修改现有的操作系统软件,使攻击者获得访问权并隐藏在计算机中的程序。如RootKit、Hkdef、ByShell…6.拒绝服务程序,黑客工具,广告软件,间谍软件……7.流氓软件……几个容易混淆的分类计算机病毒VS网络蠕虫木马VS后门后门VS特洛伊木马如果一个程序仅仅提供远程访问,那么它只是一个后门。如果攻击者将这些后门伪装成某些其他良性程序,那么那就变成真正的特洛伊木马。木马是披着羊皮的狼!!它对用户个人隐私造成极大威胁。病毒程序与正常程序的比较病毒程序其它正常可执行程序一般比较小一般比较大并非完整的程序,必须依附在其它程序上是完整的程序,独立的存在于磁盘上没有文件名有自己的文件名和扩展名,如COM、EXE有感染性,能将自身复制到其它程序上不能自我复制在用户完全不知道的情况下执行根据用户的命令执行在一定条件下有破坏作用无破坏作用病毒起源探究1949年,冯·诺伊曼文章《复杂自动装置的理论及组织的行为》中提出一种会自我繁殖的程序的可能,但没引起注意1960年,美国的约翰·康维在编写生命游戏程序时,首先实现了程序自我复制技术。1977,科幻小说《p-1的青春》贝尔实验室,磁芯大战,达尔文游戏提示:一般认为,计算机病毒的发源地在美国。计算机病毒的发展DOS阶段视窗阶段宏病毒阶段(演示)互连网阶段网络、蠕虫阶段Java、邮件炸弹、木马阶段计算机病毒的特性传染性隐藏性潜伏性可触发性破坏性不可预见性非授权性计算机病毒的分类按存在的媒体:网络型、文件型、引导型按传染方式:驻留型、非驻留型按破坏能力:良性(徐明莫言英)、恶性、极恶性按算法:伴随型、蠕虫型、寄生型、诡秘型、变型按入侵方式:源代码嵌入攻击、代码取代攻击、系统修改型、外壳附加型按传播媒介:单机、网络病毒的命名:实测比较各种防毒软件的查毒能力瑞星发现有拒绝服务的黑客工具瑞星查出有木马类黑客工具江民防火墙能对UDP协议的访问把关,就有能力发现黑客攻击的开始‘踩点’瑞星对黑客开后门能有所觉察计算机病毒的命名DOS病毒命名(一日丧命散、含笑半步颠)1.按病毒发作症状命名:小球熊猫烧香花屏病毒步行者病毒武汉男孩2.按病毒发作的时间命名:黑色星期五;3.按病毒自身包含的标志命名:CIH(不是HIV)按病毒发现地命名:如“黑色星期五”又称Jurusalem(耶路撒冷)病毒计算机病毒的命名4.按病毒发现地命名:Jurusalem(耶路撒冷)病毒,Vienna(维也纳)病毒5.按病毒的字节长度命名:以病毒传染文件时文件的增加长度或病毒自身代码的长度来命名,如1575、2153、1701、1704、1514、4096计算机病毒的命名反病毒公司为了方便管理,会按照病毒的特性,将病毒进行分类命名。虽然每个反病毒公司的命名规则都不太一样,但大体都是采用一个统一的命名方法来命名的。一般格式为:病毒前缀.病毒名.病毒后缀计算机病毒的命名病毒前缀是指一个病毒的种类,他是用来区别病毒的种族分类的。不同的种类的病毒,其前缀也是不同的。比如我们常见的木马病毒的前缀Trojan,蠕虫病毒的前缀是Worm等等还有其他的。病毒名是指一个病毒的家族特征,是用来区别和标识病毒家族的,如以前著名的CIH病毒的家族名都是统一的“CIH”,振荡波蠕虫病毒的家族名是“Sasser”。计算机病毒的命名病毒后缀是指一个病毒的变种特征,是用来区别具体某个家族病毒的某个变种的。一般都采用英文中的26个字母来表示,如Worm.Sasser.b就是指振荡波蠕虫病毒的变种B,因此一般称为“振荡波B变种”或者“振荡波变种B”。如果该病毒变种非常多(也表明该病毒生命力顽强),可以采用数字与字母混合表示变种标识。计算机病毒的命名1、系统病毒系统病毒的前缀为:Win32、PE、Win95、W32、W95等。这些病毒的一般公有的特性是可以感染windows操作系统的*.exe和*.dll文件,并通过这些文件进行传播。如CIH病毒。2、蠕虫病毒蠕虫病毒的前缀是:Worm。这种病毒的公有特性是通过网络或者系统漏洞进行传播,很大部分的蠕虫病毒都有向外发送带毒邮件,阻塞网络的特性。比如冲击波(阻塞网络),小邮差(发带毒邮件)等。计算机病毒的命名3、木马病毒、黑客病毒木马病毒其前缀是:Trojan,黑客病毒前缀名一般为Hack。Trojan.QQ3344,Hack.Nether.Client4、脚本病毒:红色代码(Script.Redlof,欢乐时光(VBS.Happytime)、十四日(Js.Fortnight.c)计算机病毒的命名5、宏病毒:宏病毒的前缀是:Macro,第二前缀是:Word、Word97、Excel、Excel97,Macro.Melissa6、后门病毒后门病毒的前缀是:Backdoor7、病毒种植程序病毒这类病毒的公有特性是运行时会从体内释放出一个或几个新的病毒到系统目录下,由释放出来的新病毒产生破坏。计算机病毒的命名8.破坏性程序病毒破坏性程序病毒的前缀是:Harm9.玩笑病毒玩笑病毒的前缀是:Joke。10.捆绑机病毒捆绑机病毒的前缀是:Binder计算机病毒的命名DoS:会针对某台主机或者服务器进行DoS攻击;Exploit:会自动通过溢出对方或者自己的系统漏洞来传播自身,或者他本身就是一个用于Hacking的溢出工具;HackTool:黑客工具,也许本身并不破坏你的机子,但是会被别人加以利用来用你做替身去破坏别人计算机病毒的生命周期4、发作阶段1、潜伏阶段2、传染阶段3、触发阶段网络恶意代码的运行周期寻找目标在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身保存线触发线寻找目标在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身寻找目标在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身•寻找目标•本地文件(.exe,.scr,.doc,vbs…)•可移动存储设备•电子邮件地址•远程计算机系统•……寻找目标在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身•主动型—程序自身实现•病毒,蠕虫•被动型-人为实现•物理接触植入•入侵之后手工植入•用户自己下载(姜太公钓鱼)•访问恶意网站•……多用于木马,后门,Rootkit…寻找目标在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身恶意代码执行目标系统中的触发目标系统之中长期存活于让自身•主动触发•蠕虫•各种漏洞(如缓冲区溢出)•恶意网站•网页木马•被动触发•初次人为触发•双击执行,或命令行运行•打开可移动存储设备…•打开本地磁盘•……•系统重启后的触发•各种启动项(如注册表,启动文件…)寻找目标在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身目标系统之中长期存活于让自身•静态存在形式•文件(Exe,Dll…)•启动项(修改注册表、各种启动文件…)•……•动态存在形式•进程(自创进程或插入到其他进程之中)•服务•端口(对外通信)•……以上也是恶意代码检测的基础和依据所在;而恶意代码本身也会对文件、启动项、进程、端口、服务等进行隐藏--〉即RootKit。上网安全意识—恶意代码篇寻找目标在目标之中将自身保存恶意代码执行目标系统中的触发目标系统之中长期存活于让自身•安装反病毒软件和防火墙•及时更新系统补丁、病毒库•不访问恶意网站•为系统设置系统密码•离开计算机时锁定计算机•不从不知名网站下载软件•拒绝各种诱惑(如色情)•移动存储设备的可写开关•……•及时更新系统补丁、病毒库•对系统关键程序(如cmd.exe)作权限保护•不运行来历不明文件(包括数据文件)•养成安全的移动存储设备使用习惯•定期备份与还原系统•关注系统启动项和系统目录中的可执行文件•……•安装杀毒软件,更新病毒库•定期备份与还原系统•清除异常系统启动项与系统目录异常文件•关注异常进程、端口、服务、网络流量…•……保存线触发线存活线计算机病毒的运行机制三组件:复制传染、隐藏、破坏运行阶段:复制传播+激活特洛伊木马木马全称是“特洛伊木马(TrojanHorse)”,原指古希腊人把士兵藏在木马内进入敌方城市从而占领敌方城市的故事。在Internet上,木马指在可从网络上下载(Download)的应用程序或游戏中,包含了可以控制用户的计算机系统的程序,这些程序可能造成用户的系统被破坏,甚至瘫痪。不可以自我复制,需要植入特洛伊木马的分类及运行机制本地木马(QQ盗号木马)网络木马(远程控制-灰鸽子)运行机制:书本+前述代码运行周期网页挂马网页挂马的种类:大家一起来试一下吧。。。(木马生成器、卡饭)网页挂马的传播方式网页挂马的运行方式网页挂马的检测与防范网页挂马加密!!!网络蠕虫定义:智能化(网络攻击、密码学、病毒)、自动化(无需干预),扫描和攻击漏洞,端点到端点,内存到内存。结构:主体功能模块+辅助功能模块其他恶意代码后门逻辑炸弹细菌手机病毒和防范概念:智能机传播方式:危害:种类:防范:清除:恶意代码的防范基于主机的基于网络的