2024年3月11日发(作者:)
新疆大学毕业论文
(
设计
)
题 目: javascript脚本病毒的编写与防范方法研究
指导老师:
学生姓名:
所属院系: 信息科学与工程学院
专 业: 信息安全
班 级: 信息安全10-2
完成日期: 2015年5月25日
声明
本人声明所论文(设计)是本人在相关教师指导下独立完成,没有抄袭、剽窃他
人成果,由此造成的一切后果由本人负责。
本人签名:
年 月
新 疆 大 学
毕业论文(设计)任务书
班 级: 信息安全10-2 姓 名:
论文(设计)题目: javascript脚本病毒的编写与防范方法研究
专 题:
要求完成的内容: 1、阅读关于计算机病毒方面的书籍和资料,
学习并了解javascript脚本病毒及感染,破坏
机制等内容。
2、能够编写出一些javascript病毒程序,并
对于javascript脚本病毒的防范研究进行分析
与研 究,给出解决方案。
3、撰写字数不少8000字的毕业设计论文。
发题日期: 2015年12月24 日 完成日期: 年 月 日
实习实训单位: 地点:
论文页数: 页; 图纸张数:
指导教师:
教研室主任:
院 长:
摘 要
随着互联网技术的发展,人们对网页的动态性的要求日益提高。脚本病毒通常与
网页相结合,将恶意的破坏性代码内嵌在网页中,一旦有用户浏览带毒网页,病
毒就会立即发作。轻则修改用户注册表,更改默认主页或强迫用户上网访问某站
点,重则格式化用户硬盘,造成重大的数据损失。网页病毒大多由恶意代码,病
毒体和脚本文件或java小程序组成,病毒制作者将其写入网页源文件中。(恶意
网页)访问该页面后,重复循环执行单一进程,消耗大量内存,cpu,降低计算
机运行速度。
脚本病毒本通常是javascript网页脚本语言编写的恶意代码,可是就在人们快要忘记它们的
的时候,它们又重新出现在人们的视视野里面。脚本病毒,凭借强大的破坏性以及触合了其
它病毒的多重属性,着实让很多计算机用户叫苦不迭。
本文结合脚本病毒源代码,详述
了脚本病毒的破坏,传染以及免杀的的机制
那么我们应该如何清楚和处理这些javascript脚本病毒呢?如何设置浏览器安全属性防
止脚本病毒的感染或发作?
关键词:JavaScript,网页脚本病毒,防范脚本病毒。
I
目录
第一章 绪论 .................................................................. 1
1.1 论文背景及意义 ....................................................... 1
1.2 国内外研究现状 ....................................................... 1
1.3 研究内容及章节安排 ................................................... 1
第二章 javascript概念 ....................................................... 3
2.1 什么是javascript .................................................... 3
2.2javascript功能有哪些?
2.3 javascript的安全性
第三章.脚本语言和脚本病毒
3.1脚本语言的简介
3.2脚本病毒的定义
3.3脚本病毒的运行环境
3.4脚本病毒的分类?
3.5脚本病毒有什么特点?
第四章.一些javascript脚本病毒
4.1 网页脚本病毒
4.2 什么是javascript脚本病毒 ............................ 错误!未定义书签。
4 javascript脚本病毒的破坏机制和感染
4.1 修改注册表
4.2
重复循环执行单一进程
4.3.
降低计算机运行速度。
4.4. 死机进程
4.5. 瘫痪进程
4.6 .修改了此主页
4.7.危险的页面
小结
第五章.javascript脚本病毒的防范方法 ......................... 错误!未定义书签。
5.1 javascript脚本病毒的清除和处理
5.2 如何设置浏览器安全属性防止脚本病毒的感染或发作
第六章.总结与展望 ............................................ 错误!未定义书签。
参考文献 .................................................................... 18
致谢......................................................... 错误!未定义书签。
II
第一章 绪论
1.1 论文背景及意义
为了获得更丰富的互联网资源,加强用户之间的交互性,几乎所有的网页和
网络应用中都含有大量的javascript代码。Javascript引擎的执行效率直接决
定了使用者在使用浏览器访问网络资源时的用户体验,因此各大浏览器厂商
都在浏览器中执行javascript代码的Javascript引擎进行重点研究,以提高
javascript代码的执行效率。
1.2 国内外研究现状
随着移动话联网的快速发展,桌面浏览器和移动嵌入式设备浏览器的发展都
朝着搞笑,快捷和交互性强的方向发展。国内外研究人员对浏览器的性能提
升进行了针对性的研究设计,同时也使得浏览器中的javascript引擎执行
Javascript代码的效率得到了大幅度的跃升。而针对目前的多核处理器平台
的广泛应用,国内外的研究人员也在尝试对浏览器和Javascript引擎进行多
线程划分,使其能够更好的利用多核处理器平台的性能优势。此外,为了使
得Javascript引擎在执行javascript这种动态语言时能够更加高效,目前大多
数浏览器的Javascript引擎都引入了java虚拟机的相关技术来提升Javascript
代码的执行效率。
1.3 研究内容及章节安排
本文研究了选题的背景,研究意义,进一步介绍javascript的基础知识,并
了解javacsript脚本病毒的概念及感染,破坏机制等内容,能够编写出一些
javascript 病毒程序,并对于javascript脚本病毒的防范方法进行分析和研究给出
解决方案。
本文的章节安排如下:
第一章 绪论部分主要介绍了本论文的目的、意义、论文中所做的工作以及
论文的章节安排。
第二章 主要介绍了相关内容的概念,什么是javascript及重点javascript的
概念。
第三章..介绍脚本语言和脚本病毒和脚本语言的简介脚本病毒的定义脚本病毒的运行环境
脚本病毒的分类?脚本病毒有什么特点?
1
第四章 一些javascript脚本病毒,介绍javascript脚本病毒的破坏机制和感
染,最重要的是本人做的不同的脚本病毒,比如修改注册表等。
第五章 怎么清楚和处理javascript脚本病毒以及如何设置浏览器安全属性防止脚本
病毒的感染或发作。
第六章 对本文所做的工作进行了总结,对下一步工作进行了展望。
2
第二章 javascript概念
本章主要研究了javascript概念,javscript的功能与java和javscript的差异,
javascript的安全性介绍。
2.1 javascript
JavaScrip是网页设计中最常用的一种编写语言。JavaScript是一种解释性的,基于对象的脚本
语言,比HTML要复杂。使用javascript也设计中javascript主要是基于客户段运行的,用户点
击带有javascript的网页,网页里的javascript就传到浏览器,由浏览器对此作处理。几乎所
有浏览器都支持javascript,如internetexplorer(IE),firefox,netscape,Mozilla,chrome
等。在Javascript中有许多对象,如string,Math,window,document对象.
它是一种动态类型,弱类型,基于原型的语言,内置支持类型。它的解释器被称为javascript
引擎,为浏览器的一部分,广泛用于客户端的脚本语言,再最是再HTML(标准通用标记语言下的
一个应用)网页上使用,用来给html网页增加动态功能。
Javascript的HTML文档里的内容是源码,它不是基于某个cpu或某个操作系统的指令,而是基
于javascript解释器的源代码指令,这种解释器是浏览器功能的一部分,只要你的电脑上能安装
上浏览器。Ok,那么,它就可以运行javascript,其运行的过程就是,先通过浏览器的解释程序,
解释成该能在该计算机上直接运行的指令后,计算机在执行,这样,这样javascript 语言就实
现了跨平台的功能。
在1995年时,由Netscape公司的BrendanEich,在网景导航者浏览器上首次设计实现而成。因
为Netscape和sun合作,Netscape管理层希望它外观看起来像java,因此取名为javascript.
Javascript,也称ECMMASript,是一种基于对象和事件驱动并具有相对安全性并广泛用于客户端
网页开发的脚本语言。
3
2.2 javascrip的功能
最早是在HTML上使用的,用来给HTML网页添加动态功能,由Netscape的
livescript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户
端脚本语言主要目的是为了解决客户端语言。是一种解释性脚本语言(代码不进
行预编译)。
主要用来向 HTML 页面添加交互行为。
可以直接嵌入 HTML 页面,
但写成单独的js文件有利于结构和行为的分离。不同于服务器端脚本语言,例
如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,
不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务
器的负担,而与此同时也带来另一个问题:安全性。主要是控制页面中的某些事
件或者操作,当然也有页面美化的作用。
页面表单处理和使页面画面更炫
功能非常强大。常常被用来嵌入到应用软件中实现特定的功能处理,尤其是浏览
器中用的最为广泛,所有的浏览器均支持此教本语言。
在网页中中实现客户端交互的脚本语言,注意它是由浏览器解释执行的,国此不会
占有服务器的计算资源,网站开发都少不了它的.PHP,JSP,都需要它的
辅助.
2.3 Javascript的安全性
安全性和执行效率,对于任何一种语言来说,都是一个重要的话题然而,对于JavaScript来
说,独一无二的
WPh客户端应用场景把这种重要性推到了一个更高的高度,几乎没有什么比W Ph上的安全
更重要,没有什么比浏览器上的
执行效率更需要加以关注的、
1、数据安全
在互联网上传输的数据永远面临着安全风险,因为你总是无法预知这此数据在互联网汹
4
涌的链路字节流中是否能安全到达你期望的目的地和黑客们虎视耽耽在这片看似平静的虚
拟iu_界里,众多监视者如果不谨慎,你刻就会被一个盗窃者获取,用于你受损失、
的敏感信息也许在卜一个时所不期望的地方从而令你蒙在使用JavaScript的时候,安全问题
是两方面的:
一方面程序提供者不要在客户端透漏或者暗示任何服务器端特性或者系统的敏感信息,
因为那样做显然不安全,很容易被不安分的用户所利用,不论是出于好奇心还是某此恶意的
目的,都有可能对服务提供方造成很大的损失。
另一方面,利用JavaScript很容易在用户不知情的情况h获取用户相关的信息、我们知
道,尽昔JavaScript在文件读写和数据传输方面有着许多禁忌,但是这此禁忌或多或少地都
有可破解的手段,一段恶意的JavaScript程序容易从用户系统中窃取数据或者悄悄地安装木
马和其他危险地监视程序。
此外,JavaScript木身也可以利用浏览器的漏洞导致浏览器崩溃、占用资源导致系统运
行缓慢,一此恶意脚木甚至对操作系统和注册表也可以造成不可逆的破坏,所有的这此应用
风险都必须得到充分的考虑和谨慎的对待。
.第三章 脚本语言和脚本病毒
3.1 脚本语言的简介
脚本语言是指介于HTML 和 Java、C++ 和 Visual Basic 之类的高级编程语言之间的
语言。HTML 语言通常用于格式化文本和链接网页,基本上没有什么处理功能,编程语言
则通常用于表示一系列复杂指令和逻辑。相较于这两者,脚本语言也可用来向计算机发送指
令,又没有可编译的编程语言那样严格和复杂。各种动态语言,如ASP、PHP、CGI、JSP
等,都是脚本语言。一般都是有应用程序提供的编程语言。应用程序包括浏览器(javascript、
VBScript)、多媒体创作工具等。应用程序的宏和创作系统的批处理语言也可以归入脚本语
言之类。总体来看,脚本语言同平时使用的Java、VB、C等语言的区别主要是: 1、脚本
语法比较简单,比较容易掌握; 2、脚本与应用程序密切相关,所以包括相对应用程序自身
的功能; 3、脚本一般不具备通用性,所能处理的问题范围有限
3.2 脚本病毒的的定义。
使用脚本语言编写的病毒程序被称为脚本病毒。不同于引导区病毒、蠕虫病毒等
有功能命名的病毒,脚本病毒的命名起始于其编写的语言是脚本语言,而在常用
的脚本语言中,由于语言之间的差异,使得现在的脚本病毒以VBS脚本病毒、JS
脚本病毒、PHP脚本病毒和Office宏病毒最为常见,其他脚本语言编写的病毒
相较于这几种来说比较少见。而在以上的几种病毒中,JS脚本病毒和PHP脚本
病毒主要包含在网页文件中,通过用户浏览网页运行和传播,宏病毒则主要是包
5
含在各类Office文档中,通过用户阅读文档来运行,而VBS病毒既可通过网页
文件进行传播也可在系统中直接运行。
3.3 脚本病毒的运行环境
通过上面的介绍我们知道有些脚本病毒是通过用户浏览包含脚本病毒的网
页来运行的,相比于在本地运行的脚本病毒,根据这些病毒进行破坏的方式又可
以将他们分为两种,一种是通过在浏览器中执行脚本程序对客户端系统进行破
坏,网页挂马就属于这种情况。第二种情况是通过包含脚本病毒的网页从客户端
向服务器提交一些恶意构造的请求或参数来对服务器进行破坏。对于第一种情况
脚本病毒主要在客户端浏览器运行,而第二种情况脚本病毒则主要在服务器端的
服务程序上运行。不过不论是上述两种情况还是单机的脚本病毒,他们的运行都
必须通过脚本语言的解释器来执行,不同的只是是在客户端还是服务器端。对于
不同的系统不同的脚本语言可能解释器有所不同,下面我们着重对Windows下的
脚本解释器来进行介绍,它是Windows系统中脚本病毒运行所赖以运行的必须条
件。
WSH是Windows Scripting Host(Windows脚本宿主)地缩略形式。WSH这
个概念最早出现于Windows 98操作系统中,是一个基于32位地Windows平台并
独立于语言地脚本运行环境,是一个批次语言/自动执行工具。比如,我们编写
了一个脚本文件,后缀名为.vbs或js,然后在Windows下双击并运行它,这个
时候,系统就会自动调用一个适当地程序对它进行解释执行,而这个程序就是W
(如果是在DOS环境下,则为,命令格式为:Cscript
)。
6
使得脚本可以被执行,就像执行批处理一样。在WSH脚本环境
里预定了一些对象,通过这些内置对象,可以实现获取环境变量、创建快睫方式、
加载程序、读写注册表等功能。[7]
3.4脚本病毒的分类
对于脚本病毒,除了可以根据脚本语言对其进行分类外,还可以根据其破坏
性分为纯脚本病毒和混合脚本病毒,还可以根据其运行在客户端或者服务器端分
为客户端脚本病毒和服务器端脚本病毒。对于纯脚本病毒来说,现在大多数的脚
本病毒呈现融合的趋势,即与其他类型的病毒配合混合工作,当前的纯脚本病毒
一般来说主要是指宏病毒,而其他的大部分脚本病毒都可以视为混合型脚本病
毒。
脚本病毒的有什么特点
要了解脚本病毒,其特点是首先要掌握地,理解了它特点就可以对脚本病毒
从整体上有一个把握了。我们就以VBS脚本病毒为例子进行说明。
VBS脚本病毒利用Windows系统地开放性特点,通过调用一些现成地Windo
ws对象、组件,可以直接对文件系统、注册表等进行控制,功能非常强大。应
该说病毒就是一种思想,但是这种思想在用VBS实现时变得极其容易。javascr
ipt脚本病毒具有如下几个特点:
1.编写简单,一个以前对病毒一无所知地病毒爱好者可以在很短地时间里
编出一个新型病毒来。
7
2.破坏力大。其破坏力不仅表现在对用户系统文件及性能地破坏。他还可
以使邮件服务器崩溃,网络发生严重阻塞。
3.感染力强。由于脚本是直接解释执行,并且它不需要像PE病毒那样,需
要做复杂地PE文件格式处理,因此这类病毒可以直接通过自我复制地方式感染
其他同类文件,并且自我地异常处理变得非常容易。
4.传播范围大。这类病毒通过htm文档,Email附件或其它方式,可以在
很短时间内传遍世界各地。
5.病毒源码容易被获取,变种多。由于VBS病毒解释执行,其源代码可读
性非常强,即使病毒源码经过加密处理后,其源代码地获取还是比较简单。因此,
这类病毒变种比较多,稍微改变一下病毒地结构,或者修改一下特征值,很多杀
毒软件可能就无能为力。
6.欺骗性强。脚本病毒为了得到运行机会,往往会采用各种让用户不大注
意地手段,譬如,邮件地附件名采用双后缀,如.,由于系统默认不显示
后缀,这样,用户看到这个文件地时候,就会认为它是一个jpg图片文件。
7.使得病毒生产机实现起来非常容易。所谓病毒生产机,就是可以按照用
户地意愿,生产病毒地机器(当然,这里指地是程序),目前地病毒生产机,之
所以大多数都为脚本病毒生产机,其中最重要地一点还是因为脚本是解释执行
地,实现起来非常容易,具体将在我们后面谈及。 [7]
第四章 一些javascript脚本病毒
本章主要研究网页脚本病毒
5. . javascript脚本病毒的破坏机制和感染 ..................... 错误!未定义书签。
5.1什么是javascript脚本病毒
8
javascript脚本病毒通常是使用JavaScript脚本语言编写的恶意代码。
1.瘫痪进程
此页面的代码如下:
脚本病毒
脚本病毒
10
2.死机进程
此页面的代码如下:
"/TR/xhtml1/DTD/"
>
charset=utf-8" />
欢迎光临!
Javascript简介
众所周知,HTML网页在互动性方面能力较弱,比如下拉菜
单,用户点击某一菜单项时,自动出现该菜单项的所有子菜单,用纯HTML网页
无法实现;用户名不能为空,密码不能少于4位,输入字符只能是数字之类,用
纯HTML网页也无法实现。要实现这些功能,就需要到JavaScript。
为了获得更丰富的互联网资源,加强用户之间的交互性,几乎所有的网页和网络
应用中都含有大量的javascript代码。Javascript引擎的执行效率直接决
定了使用者在使用浏览器访问网络资源时的用户体验,因此各大浏览器厂商都在
浏览器中执行javascript代码的Javascript引擎进行重点研究,以提高
javascript代码的执行效率。
目前用户uduiyu移动互联网的应用和服务的巨大需求让浏览器具有巨大的发展
潜力,这也是推动Javascript引擎迅猛发展的直接动力。Javascript引擎
作为各大互联网企业的浏览器战争的主战场,其技术的发展和变化是永不停息
的。因此研究Javascript引擎不仅具有巨大的商业价值,同时广阔的研究空
间。
随着移动话联网的快速发展,桌面浏览器和移动嵌入式设备浏览器的发展都朝着
搞笑,快捷和交互性强的方向发展。国内外研究人员对浏览器的性能提升进行了
针对性的研究设计,同时也使得浏览器中的javascript引擎执行
Javascript代码的效率得到了大幅度的跃升。而针对目前的多核处理器平台
的广泛应用,国内外的研究人员也在尝试对浏览器和Javascript引擎进行多
线程划分,使其能够更好的利用多核处理器平台的性能优势。此外,为了使得
12
Javascript引擎在执行javascript这种动态语言时能够更加高效,目前大
多数浏览器的Javascript引擎都引入了java虚拟机的相关技术来提升
Javascript代码的执行效率。
JavaScrip是网页设计中最常用的一种编写语言。
JavaScript是一种解释性的,基于对象的脚本语言,比HTML要复杂。使用
javascript也设计中javascript主要是基于客户段运行的,用户点击带有
javascript的网页,网页里的javascript就传到浏览器,由浏览器对此作
处理。前面提到的下拉菜单,验证表单有效性等大量互动性功能,
3.
重复循环执行单一进程
13
此页面的代码如下:
14
"/TR/xhtml1/DTD/">
4.危害的页面
siz koznakni takaxka urunmag
akiwetiga man asul amas
17
参考文献
1..韩筱卿.工建峰.钟玮.计算机病毒分析与防范人全[M].北
京:电子工业出版社.2006
2. 宁葵.访问控制安全技术及应用[M].北京:电子工业出版社,2005.
3. 几种脚本病毒的杀毒方法[J]. 计算机与网络. 2011(13)
4. 痛并快乐着. 简单防范脚本病毒的技巧[J]. 网友世界. 2010(Z1)
5. 赵芳婷,岳晓光,刘志刚. 基于WSH病毒案例的研究与防范[J]. 计
算机与现代化. 2012(04)
流行脚本病毒分析[J]. 电脑采购周刊. 2001(50)
6. 白白. 电脑防止脚本病毒执行的通用方法[J]. 网络与信息.
2005(08)
7. 高楷模. HTML脚本病毒原理分析与防范策略[J]. 九江职业技术
学院学报. 2006(01)
8.
胡波;Javascript的动态网页制作探讨[J];软件导刊;2006年17期.
9.吴润浦,方勇,吴少华.基于统计 与代码特征分析的网页木马监测
模型【j】.信息与电子工程.2009.33-37.
10.苏波,吕秋平.vbs病毒的原理分析及防治策略研究.福建电
脑.2008.4-7.
11.韩莜卿,王建峰,钟玮.计算机病毒分析与防范大全【M】北京.电
子工业出版社.2006.
12.周晓,赵海燕.vbscript脚本病毒机理与防范【j】.信息网络安
全.2004.5-8.
13.张友生,米安然.计算机病毒与木马剖析【M】北京.科海电子出版
社.2004.
14.曾云好,精通脚本黑客【M】山东:齐鲁电子音像出版社.2007.
18
15.朱思志,王曙霞,陈万,李显,陈金财.基于免疫原理的脚本病毒
检测方法【j】.应用技术与研究.2010.65-68.
16.何申,张四海,王煦法,马建辉,曹先彬.网络脚本病毒的统计分
析方法【j】.计算机学报.2006.969-975.
17.张冲,吴灏基.基于攻击树的脚本病毒样本分析方法【j】.计算机应
用研究.2005.118-122.
18.张洁,张学志,王鹏.计算机病毒防治与信息安全知识300问[M].
北京:冶金工业出版社,2006.
19. 斯泽.计算机病毒防范艺术[M].北京:机械工业出版社,2007.
20. 万博通公司编.网络系统集成实用技术与方案设计指南[M].北
京:
海洋出版社,1998.[6]马宜兴.网络安全与病毒防范[M].上海:上
海交通大学出版社,2005.
21. 周利荣;基于javascript的动态网页制作[J];电脑学习;2005年03期.
22.博建明.计算机病毒分析与对抗【M】.2版.武汉:武汉大学出版社,
2009(7).
19


发布评论