阜和教育
        CCNA培训
        CCNP培训
        CCSP培训
        CCIE培训
        CCIP培训
        CCVP培训
        Exchange 2003培训
        Exchange 2007培训
        Forefront培训
        MOSS 2007培训
        Sccm 2007培训
        SCOM 2007培训
        Window 7培训
        Windows server 2003培训
        Windows server 2008培训
        Sql Server 2005培训
        RHCE培训
        RHCT培训
        OCA培训
        OCP培训
        OCM培训
        H3CNE培训
        H3CSE培训
        BIG-IP培训
        Firepass培训
        ITIL V2培训
        ITIL V3培训
        Jncis培训
        Jncia培训
        Jncie培训
        Jncip培训
        Jncis培训
        Jncia培训
    阜和教育> 思科 > 妙用VBS脚本保护Windows系统安全性
跳过导航链接

妙用VBS脚本保护Windows系统安全性

2011-1-27 16:59:00
文章摘要:VBS脚本病毒的大量流行使我们对VBS的功能有了一个全新的认识,现在大家对它也开始重视起来。VBS代码在本地是通过WindowsScriptHost(WSH)解释执行的。VBS脚本的执行离不开WSH,WSH是微软提供的一种基于32位Windows平台的、与语言无关的脚本解释机制,它使得脚本能够直接在Windows桌面或命令提示符下运行。利用WS...

VBS脚本病毒的大量流行使我们对VBS的功能有了一个全新的认识,现在大家对它也开始重视起来。VBS代码在本地是通过Windows Script Host(WSH)解释执行的。VBS脚本的执行离不开WSH,WSH是微软提供的一种基于32位Windows平台的、与语言无关的脚本解释机制,它使得脚本能够直接在Windows桌面或命令提示符下运行。利用WSH,用户能够操纵WSH对象、ActiveX对象、注册表和文件系统。在Windows 2000下,还可用WSH来访问Windows NT活动目录服务。

  用VBS编写的脚本程序在窗口界面是由wscript.exe文件解释执行的,在字符界面由cscript.exe文件解释执行。wscript.exe是一个脚本语言解释器,正是它使得脚本可以被执行,就象执行批处理一样。关于VBS大家一定比我熟悉多了,所以再不废话,直接进入主题,看看我总结的VBS在系统安全中的妙用吧。

  一、给注册表编辑器解锁

  用记事本编辑如下内容:

  DIM WSH

  SET WSH=WSCRIPT.CreateObject("WSCRIPT.SHELL") '击活WScript.Shell对象

  WSH.POPUP("解锁注册表编辑器!")

  '显示弹出信息“解锁注册表编辑器!”  1. WSH.Regwrite"HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System\

  DisableRegistryTools",0,"REG_DWORD"

  '给注册表编辑器解锁

  WSH.POPUP("注册表解锁成功!")

  '显示弹出信息“注册表解锁成功!”

  保存为以.vbs为扩展名的文件,使用时双击即可。

  二、关闭Win NT/2000的默认共享

  用记事本编辑如下内容:

  Dim WSHShell'定义变量

  set WSHShell=CreateObject("WScript.shell") '创建一个能与操作系统沟通的对象WSHShell

  Dim fso,dc

  Set fso=CreateObject("Scripting.FileSystemObject")'创建文件系统对象

  set dc=fso.Drives '获取所有驱动器盘符

  For Each d in dc

  Dim str

  WSHShell.run("net share"&d.driveletter &"$ /delete")'关闭所有驱动器的隐藏共享

  next

  WSHShell.run("net share admin$ /delete")

  WSHShell.run("net share ipc$ /delete")'关闭admin$和ipc$管道共享

  现在来测试一下,先打开cmd.exe,输入net share命令就可以看到自己机子上的共享。双击执行stopshare.vbs后,会看见窗口一闪而过。然后再在cmd里输入net share命令,这时候没有发现共享列表了

  1. New Roman">

  三、显示本机IP地址

  有许多时候,我们需要知道本机的IP地址,使用各种软件虽然可以办到,但用VBS脚本也非常的方便。用记事本编辑如下内容:

  1. Dim WS

  2. Set WS=CreateObject("MSWinsock.Winsock")

  3. IPAddress=WS.LocalIP

  4. MsgBox "Local IP=" & IPAddress

  将上面的内容保存为ShowIP.vbs,双击执行即可得到本机IP地址。

  四、利用脚本编程删除日志

  入侵系统成功后黑客做的第一件事便是清除日志,如果以图形界面远程控制对方机器或是从终端登陆进入,删除日志不是一件困难的事,由于日志虽然也是作为一种服务运行,但不同于http,ftp这样的服务,可以在命令行下先停止,再删除,在命令行下用net stop eventlog是不能停止的,所以有人认为在命令行下删除日志是很困难的,实际上不是这样,比方说利用脚本编程中的VMI就可以删除日志,而且非常的简单方便。源代码如下:

  1. strComputer= "."

  2. Set objWMIService = GetObject("winmgmts:" _

  3. & "{impersonationLevel=impersonate,(Backup)}!\\" & _

  4. strComputer & "\root\cimv2")

  5. dim mylogs(3)

  6. mylogs(1)="application"

  7. mylogs(2)="system"

  8. mylogs(3)="security"

  9. for Each logs in mylogs

  10. Set colLogFiles=objWMIService.ExecQuery _

  11. ("Select * from Win32_NTEventLogFile where LogFileName='"&logs&"'")

  12. For Each objLogfile in colLogFiles

  13. objLogFile.ClearEventLog()

  14. Next

  15. next

  将上面的代码保存为cleanevent.vbs文件即可。在上面的代码中,首先获得object对象,然后利用其clearEventLog() 方法删除日志。建立一个数组,application,security,system,如果还有其他日志也可以加入数组。然后用一个for循环,删除数组中的每一个元素,即各个日志。

上一篇:无线网络应用配置六步走
下一篇:无法访问windows installer服务的解决方法
文章摘要: 在WindowsXP中安装程序时出现“TheWindowsInstallerServiceCouldNotBeAccessed”(无法访问WindowsInstaller服务)错误消息   要解决此问题,请按照下列步骤操作:   方法一:   卸载,重新安装windowsinstaller服务   一、先用dos命令窗口msiexec/unregserver停掉windowsinstaller服务。   二、下载Ins...