javascript脚本病毒的编写与防范方法研究学士学位论文.docx
《javascript脚本病毒的编写与防范方法研究学士学位论文.docx》由会员分享,可在线阅读,更多相关《javascript脚本病毒的编写与防范方法研究学士学位论文.docx(23页珍藏版)》请在冰豆网上搜索。
![javascript脚本病毒的编写与防范方法研究学士学位论文.docx](https://file1.bdocx.com/fileroot1/2023-5/17/37e8d286-751d-40be-8d84-2b82dbd7ba05/37e8d286-751d-40be-8d84-2b82dbd7ba051.gif)
javascript脚本病毒的编写与防范方法研究学士学位论文
新疆大学毕业论文(设计)
题目:
javascript脚本病毒的编写与防范方法研究
指导老师:
海拉提
学生姓名:
古再力努尔.然木土力
所属院系:
信息科学与工程学院
专业:
信息安全
班级:
信息安全10-2
完成日期:
2015年5月25日
声明
本人声明所论文(设计)是本人在相关教师指导下独立完成,没有抄袭、剽窃他人成果,由此造成的一切后果由本人负责。
本人签名:
年月
新疆大学
毕业论文(设计)任务书
班级:
信息安全10-2姓名:
古再力努尔.然木土力
论文(设计)题目:
javascript脚本病毒的编写与防范方法研究
专题:
要求完成的内容:
1、阅读关于计算机病毒方面的书籍和资料,学习并了解javascript脚本病毒及感染,破坏机制等内容。
2、能够编写出一些javascript病毒程序,并对于javascript脚本病毒的防范研究进行分析与研究,给出解决方案。
3、撰写字数不少8000字的毕业设计论文。
发题日期:
2015年12月24日完成日期:
年月日
实习实训单位:
地点:
论文页数:
页;图纸张数:
指导教师:
教研室主任:
院长:
摘要
随着互联网技术的发展,人们对网页的动态性的要求日益提高。
脚本病毒通常与网页相结合,将恶意的破坏性代码内嵌在网页中,一旦有用户浏览带毒网页,病毒就会立即发作。
轻则修改用户注册表,更改默认主页或强迫用户上网访问某站点,重则格式化用户硬盘,造成重大的数据损失。
网页病毒大多由恶意代码,病毒体和脚本文件或java小程序组成,病毒制作者将其写入网页源文件中。
(恶意网页)访问该页面后,重复循环执行单一进程,消耗大量内存,cpu,降低计算机运行速度。
脚本病毒本通常是javascript网页脚本语言编写的恶意代码,可是就在人们快要忘记它们的的时候,它们又重新出现在人们的视视野里面。
脚本病毒,凭借强大的破坏性以及触合了其它病毒的多重属性,着实让很多计算机用户叫苦不迭。
本文结合脚本病毒源代码,详述了脚本病毒的破坏,传染以及免杀的的机制
那么我们应该如何清楚和处理这些javascript脚本病毒呢?
如何设置浏览器安全属性防止脚本病毒的感染或发作?
关键词:
JavaScript,网页脚本病毒,防范脚本病毒。
目录
第一章绪论1
1.1论文背景及意义1
1.2国内外研究现状2
1.3研究内容及章节安排3
第二章javascript概念5
2.1什么是javascript5
2.2javascript功能有哪些?
2.3javascript的安全性
第三章.脚本语言和脚本病毒
3.1脚本语言的简介
3.2脚本病毒的定义
3.3脚本病毒的运行环境
3.4脚本病毒的分类?
3.5脚本病毒有什么特点?
第四章.一些javascript脚本病毒
4.1网页脚本病毒
4.2什么是javascript脚本病毒10
4javascript脚本病毒的破坏机制和感染
4.1修改注册表
4.2重复循环执行单一进程
4.3.降低计算机运行速度。
4.4.死机进程
4.5.瘫痪进程
4.6.修改了此主页
4.7.危险的页面
小结
第五章.javascript脚本病毒的防范方法13
5.1javascript脚本病毒的清除和处理
5.2如何设置浏览器安全属性防止脚本病毒的感染或发作
第六章.总结与展望29
参考文献31
致谢32
第一章绪论
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的概念。
第三章..介绍脚本语言和脚本病毒和脚本语言的简介脚本病毒的定义脚本病毒的运行环境
脚本病毒的分类?
脚本病毒有什么特点?
第四章一些javascript脚本病毒,介绍javascript脚本病毒的破坏机制和感染,最重要的是本人做的不同的脚本病毒,比如修改注册表等。
第五章怎么清楚和处理javascript脚本病毒以及如何设置浏览器安全属性防止脚本病毒的感染或发作。
第六章对本文所做的工作进行了总结,对下一步工作进行了展望。
第二章javascript概念
本章主要研究了javascript概念,javscript的功能与java和javscript的差异,javascript的安全性介绍。
2.1javascript
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,是一种基于对象和事件驱动并具有相对安全性并广泛用于客户端网页开发的脚本语言。
2.2javascrip的功能
最早是在HTML上使用的,用来给HTML网页添加动态功能,由Netscape的livescript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言主要目的是为了解决客户端语言。
是一种解释性脚本语言(代码不进行预编译)。
主要用来向HTML页面添加交互行为。
可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。
不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。
所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:
安全性。
主要是控制页面中的某些事件或者操作,当然也有页面美化的作用。
页面表单处理和使页面画面更炫
功能非常强大。
常常被用来嵌入到应用软件中实现特定的功能处理,尤其是浏览器中用的最为广泛,所有的浏览器均支持此教本语言。
o刮刮乐上有一个区域写着,保安区域刮开无效......
o请问那位朋友一下我的群视频为什么群成员......
o注册牵牛工作台显示签名与密码不符是怎么回......
o酒仙网货到付款的订单办理退货了,钱怎么退......
o输入袢
o右侧肢体无力
o骨骺端软骨带
o红外线热像仪
o框架梁端考虑受压钢筋
在网页中中实现客户端交互的脚本语言,注意它是由浏览器解释执行的,国此不会占有服务器的计算资源,网站开发都少不了它的.PHP,JSP,ASP.NET都需要它的辅助.
2.3Javascript的安全性
安全性和执行效率,对于任何一种语言来说,都是一个重要的话题然而,对于JavaScript来说,独一无二的
WPh客户端应用场景把这种重要性推到了一个更高的高度,几乎没有什么比WPh上的安全更重要,没有什么比浏览器上的
执行效率更需要加以关注的、
1、数据安全
在互联网上传输的数据永远面临着安全风险,因为你总是无法预知这此数据在互联网汹涌的链路字节流中是否能安全到达你期望的目的地和黑客们虎视耽耽在这片看似平静的虚拟iu_界里,众多监视者如果不谨慎,你刻就会被一个盗窃者获取,用于你受损失、
的敏感信息也许在卜一个时所不期望的地方从而令你蒙在使用JavaScript的时候,安全问题是两方面的:
一方面程序提供者不要在客户端透漏或者暗示任何服务器端特性或者系统的敏感信息,因为那样做显然不安全,很容易被不安分的用户所利用,不论是出于好奇心还是某此恶意的目的,都有可能对服务提供方造成很大的损失。
另一方面,利用JavaScript很容易在用户不知情的情况h获取用户相关的信息、我们知道,尽昔JavaScript在文件读写和数据传输方面有着许多禁忌,但是这此禁忌或多或少地都有可破解的手段,一段恶意的JavaScript程序容易从用户系统中窃取数据或者悄悄地安装木马和其他危险地监视程序。
此外,JavaScript木身也可以利用浏览器的漏洞导致浏览器崩溃、占用资源导致系统运行缓慢,一此恶意脚木甚至对操作系统和注册表也可以造成不可逆的破坏,所有的这此应用风险都必须得到充分的考虑和谨慎的对待。
.第三章脚本语言和脚本病毒
3.1脚本语言的简介
脚本语言是指介于HTML和Java、C++和VisualBasic之类的高级编程语言之间的语言。
HTML语言通常用于格式化文本和链接网页,基本上没有什么处理功能,编程语言则通常用于表示一系列复杂指令和逻辑。
相较于这两者,脚本语言也可用来向计算机发送指令,又没有可编译的编程语言那样严格和复杂。
各种动态语言,如ASP、PHP、CGI、JSP等,都是脚本语言。
一般都是有应用程序提供的编程语言。
应用程序包括浏览器(javascript、VBScript)、多媒体创作工具等。
应用程序的宏和创作系统的批处理语言也可以归入脚本语言之类。
总体来看,脚本语言同平时使用的Java、VB、C等语言的区别主要是:
1、脚本语法比较简单,比较容易掌握;2、脚本与应用程序密切相关,所以包括相对应用程序自身的功能;3、脚本一般不具备通用性,所能处理的问题范围有限
3.2脚本病毒的的定义。
使用脚本语言编写的病毒程序被称为脚本病毒。
不同于引导区病毒、蠕虫病毒等有功能命名的病毒,脚本病毒的命名起始于其编写的语言是脚本语言,而在常用的脚本语言中,由于语言之间的差异,使得现在的脚本病毒以VBS脚本病毒、JS脚本病毒、PHP脚本病毒和Office宏病毒最为常见,其他脚本语言编写的病毒相较于这几种来说比较少见。
而在以上的几种病毒中,JS脚本病毒和PHP脚本病毒主要包含在网页文件中,通过用户浏览网页运行和传播,宏病毒则主要是包含在各类Office文档中,通过用户阅读文档来运行,而VBS病毒既可通过网页文件进行传播也可在系统中直接运行。
3.3脚本病毒的运行环境
通过上面的介绍我们知道有些脚本病毒是通过用户浏览包含脚本病毒的网页来运行的,相比于在本地运行的脚本病毒,根据这些病毒进行破坏的方式又可以将他们分为两种,一种是通过在浏览器中执行脚本程序对客户端系统进行破坏,网页挂马就属于这种情况。
第二种情况是通过包含脚本病毒的网页从客户端向服务器提交一些恶意构造的请求或参数来对服务器进行破坏。
对于第一种情况脚本病毒主要在客户端浏览器运行,而第二种情况脚本病毒则主要在服务器端的服务程序上运行。
不过不论是上述两种情况还是单机的脚本病毒,他们的运行都必须通过脚本语言的解释器来执行,不同的只是是在客户端还是服务器端。
对于不同的系统不同的脚本语言可能解释器有所不同,下面我们着重对Windows下的脚本解释器来进行介绍,它是Windows系统中脚本病毒运行所赖以运行的必须条件。
WSH是WindowsScriptingHost(Windows脚本宿主)地缩略形式。
WSH这个概念最早出现于Windows98操作系统中,是一个基于32位地Windows平台并独立于语言地脚本运行环境,是一个批次语言/自动执行工具。
比如,我们编写了一个脚本文件,后缀名为.vbs或js,然后在Windows下双击并运行它,这个时候,系统就会自动调用一个适当地程序对它进行解释执行,而这个程序就是WScript.exe(如果是在DOS环境下,则为CScript.exe,命令格式为:
CscriptFileName.vbs)。
WScript.exe使得脚本可以被执行,就像执行批处理一样。
在WSH脚本环境里预定了一些对象,通过这些内置对象,可以实现获取环境变量、创建快睫方式、加载程序、读写注册表等功能。
[7]
3.4脚本病毒的分类
对于脚本病毒,除了可以根据脚本语言对其进行分类外,还可以根据其破坏性分为纯脚本病毒和混合脚本病毒,还可以根据其运行在客户端或者服务器端分为客户端脚本病毒和服务器端脚本病毒。
对于纯脚本病毒来说,现在大多数的脚本病毒呈现融合的趋势,即与其他类型的病毒配合混合工作,当前的纯脚本病毒一般来说主要是指宏病毒,而其他的大部分脚本病毒都可以视为混合型脚本病毒。
脚本病毒的有什么特点
要了解脚本病毒,其特点是首先要掌握地,理解了它特点就可以对脚本病毒从整体上有一个把握了。
我们就以VBS脚本病毒为例子进行说明。
VBS脚本病毒利用Windows系统地开放性特点,通过调用一些现成地Windows对象、组件,可以直接对文件系统、注册表等进行控制,功能非常强大。
应该说病毒就是一种思想,但是这种思想在用VBS实现时变得极其容易。
javascript脚本病毒具有如下几个特点:
1.编写简单,一个以前对病毒一无所知地病毒爱好者可以在很短地时间里编出一个新型病毒来。
2.破坏力大。
其破坏力不仅表现在对用户系统文件及性能地破坏。
他还可以使邮件服务器崩溃,网络发生严重阻塞。
3.感染力强。
由于脚本是直接解释执行,并且它不需要像PE病毒那样,需要做复杂地PE文件格式处理,因此这类病毒可以直接通过自我复制地方式感染其他同类文件,并且自我地异常处理变得非常容易。
4.传播范围大。
这类病毒通过htm文档,Email附件或其它方式,可以在很短时间内传遍世界各地。
5.病毒源码容易被获取,变种多。
由于VBS病毒解释执行,其源代码可读性非常强,即使病毒源码经过加密处理后,其源代码地获取还是比较简单。
因此,这类病毒变种比较多,稍微改变一下病毒地结构,或者修改一下特征值,很多杀毒软件可能就无能为力。
6.欺骗性强。
脚本病毒为了得到运行机会,往往会采用各种让用户不大注意地手段,譬如,邮件地附件名采用双后缀,如.jpg.vbs,由于系统默认不显示后缀,这样,用户看到这个文件地时候,就会认为它是一个jpg图片文件。
7.使得病毒生产机实现起来非常容易。
所谓病毒生产机,就是可以按照用户地意愿,生产病毒地机器(当然,这里指地是程序),目前地病毒生产机,之所以大多数都为脚本病毒生产机,其中最重要地一点还是因为脚本是解释执行地,实现起来非常容易,具体将在我们后面谈及。
[7]
第四章一些javascript脚本病毒
本章主要研究网页脚本病毒
5..javascript脚本病毒的破坏机制和感染10
5.1什么是javascript脚本病毒
javascript脚本病毒通常是使用JavaScript脚本语言编写的恶意代码。
1.瘫痪进程
此页面的代码如下:
JavaScript脚本病毒
脚本病毒
脚本病毒
varTeaxtarea;
if(Textarea>=3)
{
alert("输入超过!
");
}