IT之家于5月18日报道,在当地时间5月17日,微软公布了一项技术通告,该通告旨在协助企业提前识别并转移现有环境中对VBscript的依赖,以便在VBscript全面停止使用之前做好准备。
IT之家指出,在未来的Windows版本中,VBscript将被系统默认关闭。目前,微软已经开始实施逐步淘汰的计划,并在Win11 24H2版本中将VBscript转变为可选的FOD功能。
策略一:通过Sysmon工具对VBscript的运行状况进行实时监控。
Sysmon,即系统监控工具,由Sysinternals提供,具备对.dll文件加载行为的精准追踪能力。利用其内置的Event ID 7(即图像加载)功能,管理员能够精确掌握vbscript.dll何时被加载,以及是由哪个进程所加载。
将 Sysmon 设置为监控 vbscript.dll,具体配置方法如下:
nmatch="include"> ndition="contains">vbscript.dll
为了实施这一配置,您需先对您的Sysmon配置文件进行编辑,该文件通常名为sysmon-config.xml。
检查以下集中管理位置中的脚本文件:
策略三:全系统扫描.vbs 文件
通过 Powerscript 脚本扫描用户及脚本相关目录:
示例 PowerShell 脚本:
pathsToScan数组包含了"C:\Users"、"C:\ProgramData"和"C:\scripts"三个路径,logPath变量指向"C:\VBSscriptScan"目录下的VbsFiles_$(hostname).csv文件,通过foreach循环遍历pathsToScan数组中的每个路径,如果路径存在,则使用Get-ChildItem命令获取该路径下所有.vbs文件,递归搜索并忽略错误,然后使用Select-Object命令选择文件的完整路径、最后修改时间和文件大小。
此 PowerShell 脚本能够对 MSI 包内含的 VBscript 定制操作(动作类型为 6、38、50)进行解析。
执行命令获取"C:\MSIRepo"路径下的所有.msi文件,递归搜索,并对每个文件执行以下操作:获取文件的完整路径,创建一个WindowsInstaller的Installer对象,打开该路径对应的数据库,执行SQL查询以获取CustomAction表中的所有记录,遍历查询结果,提取动作名称和动作类型,判断动作类型是否为6、38或50,如果是,则输出"VBscript自定义动作:$actionName位于$msiPath"。
后续行动建议
微软指出,在当前时期,企业需迅速完成检测和迁移工作,以防止因未来操作系统默认关闭而引发业务的中断。
参考资料: