文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络程序开发数据结构病毒编程技术之恶意代码的亲密接触
精品推荐
特别推荐
·网游外挂编写完全攻略
·开发WDM型的USB设备驱动程序
·数据库设计范式深入浅出
·理解软件保护技术之序列号方式
·大型网站必鉴:分销渠道的结构
·你的代码真的很健壮吗
·利用HOOK拦截封包原理
·四种网络游戏外挂的设计方法
热点TOP10
·Spring Integration 1.0 正式发布
·使用 Abbot 框架自动化测试 Eclipse 插件的用户界面 1
·sqldatasource控件处理image类型数据
·使用Spring框架轻松解决数据访问和配置问题
·PrideORM框架设计---数据访问层的设计
·委托(delegate)在自定义控件的应用
·Visual Basic里与Print有关的函数
·DataGrid控件中如过有四列,想去删除一列,怎么办

病毒编程技术之恶意代码的亲密接触

日期:2008年6月16日 作者: 查看:[大字体 中字体 小字体]


  计算机病毒已经为我们的生活带来了日益严重的危害,一次又一次的安全事故让很多人谈毒色变。然而,从技术上来说,这种无所不用其极的极限编程技术却又是极其精彩的,一个好的病毒代码更像是一个构思精密的艺术品。无论你是一个狂热的技术爱好者,还是一个软件产品的开发人员,都应该对病毒技术有所了解,以至于当它来临的时候能够从容应对或是为客户生产出安全的产品。出于这些目的,我们将组织一系列恶意代码的亲密接触的文章,从最真实的角度让读者感受各种病毒、蠕虫等恶意代码技术,作为系列的开始,本文作者以一个真实的病毒Elkern向读者介绍了病毒的一些基本编码技术,并对病毒的原理做了详细的介绍。

  生活在网络时代,无论是作为一名程序员抑或是作为一名普通的电脑使用者,对病毒这个词都已经不再陌生。网络不仅仅是传播信息的快速通道,从另外一个角度来看,也是病毒得以传播和滋生的温床,有资料显示,未安装补丁的Windows操作系统连接至internet平均10-15分钟就会被蠕虫或病毒感染。各种类型的病毒,在人们通过网络查阅信息、交换文件、收听视频时正在悄悄地传播。这些病毒或蠕虫不仅在传播过程中消耗大量的带宽资源,而且会干扰系统功能的正常使用或造成数据丢失、甚至是硬件损坏,每个电脑用户几乎都有过系统被病毒感染而无法正常使用的经历,大部分企业用户也都有过因病毒发作致使业务系统不能正常运行的经历。病毒距离我们,其实并不遥远。

  然而,不只普通用户在面对各种夸大的报道和宣传后感觉到茫然和恐惧,随着计算机各个领域的细分和专业化,就连一些职业的程序员对病毒技术也缺乏深入的了解。病毒,不过是精心设计的一段程序,是编程技巧和优化技术的集中体现,是挑战技术极限、无所不用其极的一种编程技术。其实病毒技术中的优化和各种精巧的构造,也完全可以在一些特殊的情况下使用,使得某些编程工作得以简化;从另外一个角度来看,只有充分了解病毒技术,才能更好地研究应对之策,知己知彼,方能百战不殆。

  病毒不是某个系统下的专属品,事实上现在各种流行的操作系统:从最初的Unix 系统到其各种变体如Linux、Solaris、AIX、OS2 等,从Windows 到CE、Sybian等嵌入式系统,甚至是在某些专业化的大型机系统上,都无一例外地出现了病毒,各种平台下病毒的基本原理类似的,但是针对不同系统的特性,实现可能区别很大,原因在于作为一种无所不用其极的技术,势必利用各种系统相关的功能或弱点以取得各种特权和资源。正如生物的多样性一样,病毒种类繁多:包括源代码病毒、宏病毒、脚本病毒以及与各种系统可执行文件系统相关的病毒等。本文将以使用最为广泛的Windows操作系统下的PE病毒为例,说明病毒技术的原理以及实现技术,驱散笼罩在病毒技术上的迷雾。
  
  病毒、蠕虫、恶意代码

  传统意义上的病毒是具有类似生物病毒特征的特殊代码或程序,具有两个最基本的特点:自我复制和自动传播。

  蠕虫,广义上一般被认为是病毒的子类,同样具有自我复制和传播的特性,但鉴于蠕虫通常利用系统漏洞而非感染文件系统进行传播的特殊性,通常将其单独作为一类。一般认为区分蠕虫和传统病毒的分类标准是看其是否依赖于宿主程序进行感染和传播,如果必须依附于宿主程序才能进行感染和传播的才是病毒。不过定义不是绝对的,当今病毒和蠕虫技术的融合愈益深入,界限愈益模糊。很多病毒采用了很多的蠕虫传播技术,蠕虫也不仅仅通过系统漏洞传播,同时也通过感染文件系统进行传播。此外还有有相当一部分程序虽然不具备自我复制和自我传播的特征,但却执行了未经用户许可的代码、做了未经用户许可的事情,比如特洛伊木马等间谍软件、浏览器恶意脚本、一些广告软
件等,显然无法将其定义为传统的病毒或蠕虫,他们和蠕虫、病毒一样,同属于一个更大的范畴——恶意代码。本文重点阐述传统病毒经常使用的技术。
  
  病毒简史

  谈病毒技术,无法回避病毒产生的历史。早在1949年在冯·诺伊曼的一篇论文《复杂自动装置的理论及组织的行为》中,即预见了可自我繁殖程序出现的可能。而现在众所公认的病毒的萌牙于AT&T(贝尔实验室)几个年轻的天才程序员编制的磁芯大战(CoreWar)游戏程序,已经具备了病毒的一些特征。随后相关的实验和研究在一些学者和天才的程序员中开始展开,正是这些创造了计算机系统的天才们,制造了
计算机病毒。

  很难考证第一个真正的病毒出现在何时何地,但在20 世纪80 年代,随着个人计算机的普及,病毒已经开始流行了,早期的计算机病毒是和当时的文件交换方式和操作系统特点联系在一起的,那个时候发行软件或交换文件主要通过软盘进行,系统是基于文本界面的Unix 或DOS,网络尚未普及,因此这一时期的病毒大都是引导区病毒和文件型病毒,前者通过替换系统引导区代码在系统启动时获取执行权,后者通过修改可执行文件嵌入代码以在可执行文件执行时获取控制权,更多病毒的则是二者的结合。

[1] [2] [3] [4] [5] 下一页 



上一篇:恶意代码的亲密接触之文件搜索和API导址

下一篇:已知OO世界中函数式编程实践和小结
相关文章:
·asp关于统计总数的代码
·IIS5 + ADO 2.5新先睹为快技术
·第一次亲密接触(二)
·基于E-Link数据传输器的应用技术探讨
·中小企业VoIP技术及个案分析
·VoIP技术两大方向和发展现状介绍
·高速路由器的体系结构和关键技术
相关软件:
·2003年全国计算机等级考试三级笔试试卷(信息管理技术)(上)
·电脑安装与维修实用技术1
·ESET NOD32防病毒360专用版
·KAV-Mobile卡巴斯基 V2.0.32bate1 | 反病毒软件
·卡巴斯基病毒库备份还原器 V7.1
·光华反病毒软件 V2.0.3286.3
·恶意网站清除器 V2.5

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot