计算机病毒概述
计算机病毒概述
本章学习目标 ■明确计算机病毒的基本概念 ■了解计算机病毒发展的历史转折点 熟悉计算机病毒的分类 熟悉商业计算机病毒命名规则 ■掌握计算机病毒的发展趋势
本章学习目标 ¡ 明确计算机病毒的基本概念 ¡ 了解计算机病毒发展的历史转折点 ¡ 熟悉计算机病毒的分类 ¡ 熟悉商业计算机病毒命名规则 ¡ 掌握计算机病毒的发展趋势
计算机病毒的定义 计算机病毒产生的动机(原因): ·计算机系统的脆弱性(ⅠBM病毒防护计划) ·作为一种文化( hacker) 病毒编制技术学习。 恶作剧。 产生于个别人的报复心理。 用于版权保护(江民公司)。 用于特殊目的(军事、计算机防病毒公司)
一 、计算机病毒的定义 计算机病毒产生的动机(原因): • 计算机系统的脆弱性(IBM病毒防护计划) • 作为一种文化(hacker) • 病毒编制技术学习。 • 恶作剧。 • 产生于个别人的报复心理。 • 用于版权保护(江民公司)。 • 用于特殊目的(军事、计算机防病毒公司)
计算机病毒的前身只不过是程序员闲来无事而编写的趣 味程序;后来,才发展出了诸如破坏文件、修改系统参 数、干扰计算机的正常工作等的恶性病毒。 “病毒”一词的正式出现在1985年3月份的“科学美国人” 里 “计算机病毒”与医学上的“病毒”不同,它不是天然 存在的,是某些人利用计算机软、硬件所固有的脆弱性, 编制的具有特殊功能的程序。 “计算机病毒”为什么叫做病毒?原因是,它与生物医 学上的病毒同样有传染和破坏的特性,因此这一名词是 由生物医学上的“病毒”概念引申而来
计算机病毒的前身只不过是程序员闲来无事而编写的趣 味程序;后来,才发展出了诸如破坏文件、修改系统参 数、干扰计算机的正常工作等的恶性病毒。 “病毒”一词的正式出现在1985年3月份的“科学美国人” 里。 “计算机病毒”与医学上的“病毒”不同,它不是天然 存在的,是某些人利用计算机软、硬件所固有的脆弱性, 编制的具有特殊功能的程序。 “计算机病毒”为什么叫做病毒?原因是,它与生物医 学上的病毒同样有传染和破坏的特性,因此这一名词是 由生物医学上的“病毒”概念引申而来
Fred cohen定义: 计算机病毒是一种程序,他用修改其它程序的方法 将自身的精确拷贝或者可能演化的拷贝插入其它程 序,从而感染其它程序。 Fred cohen认为: 病毒不是利用操作系统运行的错误和缺陷的程序 病毒是正常的用户程序
¡ Fred Cohen定义: 计算机病毒是一种程序,他用修改其它程序的方法 将自身的精确拷贝或者可能演化的拷贝插入其它程 序,从而感染其它程序。 ¡ Fred Cohen认为: 病毒不是利用操作系统运行的错误和缺陷的程序, 病毒是正常的用户程序
广义定义: 从广义上讲,凡能够引起计算机故障,破坏计算机 数据的程序统称为计算机病毒。依据此定义,诸如 恶意代码,蠕虫,木马等均可称为计算机病毒。在 国内,专家和研究者对计算机病毒也做过不尽相同 的定义,但一直没有公认的明确定义
广义定义: 从广义上讲,凡能够引起计算机故障,破坏计算机 数据的程序统称为计算机病毒。依据此定义,诸如 恶意代码,蠕虫,木马等均可称为计算机病毒。在 国内,专家和研究者对计算机病毒也做过不尽相同 的定义,但一直没有公认的明确定义
标准定义(中国) 直至1994年2月18日,我国正式颁布实施了《中 华人民共和国计算机信息系统安全保护条例》, 在《条例》第二十八条中明确指出:"计算机病 毒,是指编制或者在计算机程序中插入的破坏 计算机功能或者毁坏数据,影响计算机使用, 并能自我复制的一组计算机指令或者程序代码。 "此定义具有法律性、权威性
标准定义(中国): 直至1994年2月18日,我国正式颁布实施了《中 华人民共和国计算机信息系统安全保护条例》, 在《条例》第二十八条中明确指出: "计算机病 毒,是指编制或者在计算机程序中插入的破坏 计算机功能或者毁坏数据,影响计算机使用, 并能自我复制的一组计算机指令或者程序代码。 "此定义具有法律性、权威性
二、病毒特征和结构 破坏性 传染性 隐蔽性 寄生性 触发(潜伏)性
二、病毒特征和结构 破坏性 传染性 隐蔽性 寄生性 触发(潜伏)性
计病毒引导模块 算机病毒程序 激活传染条件的判断部分 病毒传染模块 传染功能的实施部分 触发破坏表现条件的判断部分 病毒破坏表现模块 破坏表现功能的实施部分
*引导功能模块* 将病毒程序寄生于宿主程序中; 加载计算机程序; 病毒程序随其宿主程序的运行进入系统;} {传染功能模块;} {破坏功能模块;} maino 调用引导功能模块; A: do 寻找传染对象; f(传染条件不满足) goto A; y while((满足传染条件); 调用传染功能模块;
/*引导功能模块*/ {将病毒程序寄生于宿主程序中; 加载计算机程序; 病毒程序随其宿主程序的运行进入系统;} {传染功能模块;} {破坏功能模块;} main() {调用引导功能模块; A:do {寻找传染对象; if(传染条件不满足) goto A;} while(满足传染条件); 调用传染功能模块;