微软宣布 VBScript 弃用计划,企业需提前部署检测策略
2025-05-19 12:02:31 知识百科 39观看
摘要 5 月 18 日消息,当地时间 5 月 17 日,微软发布技术公告,旨在帮助企业在 VBScript 全面弃用之前检测并迁移现有环境中的 VBScript 依赖。注:VBScript 将在未来的 Windows 版本中默认禁用,目前微软已启动分阶段弃用

5 月 18 日消息,当地时间 5 月 17 日,微软发布技术公告,旨在帮助企业在 VBScript 全面弃用之前检测并迁移现有环境中的 VBScript 依赖。35v28资讯网——每日最新资讯28at.com

35v28资讯网——每日最新资讯28at.com

注:VBScript 将在未来的 Windows 版本中默认禁用,目前微软已启动分阶段弃用计划并在Win11 24H2中将 VBScript 转为 FOD 可选功能。35v28资讯网——每日最新资讯28at.com

35v28资讯网——每日最新资讯28at.com

35v28资讯网——每日最新资讯28at.com

策略一:使用 Sysmon 监控 VBScript 使用情况

Sysmon(System Monitor)是 Sysinternals 提供的监控工具,支持对.dll加载行为进行细致跟踪。借助其 Event ID 7(Image Load)功能,管理员可以捕捉 vbscript.dll 何时、由哪个进程被加载。35v28资讯网——每日最新资讯28at.com

配置 Sysmon 以追踪 vbscript.dll,配置示例如下:35v28资讯网——每日最新资讯28at.com

<Sysmonschemaversion="4.50"><EventFiltering><ImageLoadonmatch="include"><ImageLoadedcondition="contains">vbscript.dll</ImageLoaded></ImageLoad></EventFiltering></Sysmon>

要应用此配置,首先需要编辑您的 Sysmon 配置文件(通常是 sysmon-config.xml)。35v28资讯网——每日最新资讯28at.com

使用 Sysinternals Sysmon 实用程序重新加载。35v28资讯网——每日最新资讯28at.com

以管理员权限打开命令提示符并运行:Sysmon64.exe -c sysmon-config.xml35v28资讯网——每日最新资讯28at.com

通过运行以下命令验证当前配置:Sysmon64.exe -c35v28资讯网——每日最新资讯28at.com

策略二:审查 VBScript 依赖项

检查以下集中管理位置中的脚本文件:35v28资讯网——每日最新资讯28at.com

组策略脚本:扫描 //<domain>/SYSVOL 中的.vbs 文件及对 wscript.exe、cscript.exe 的调用。35v28资讯网——每日最新资讯28at.com

计划任务:检查任务命令行的.vbs 执行痕迹。35v28资讯网——每日最新资讯28at.com

Intune 部署的 PowerShell 脚本:排查间接调用 VBScript 的情况。35v28资讯网——每日最新资讯28at.com

策略三:全系统扫描.vbs 文件

通过 PowerScript 脚本扫描用户及脚本相关目录:35v28资讯网——每日最新资讯28at.com

C:/Users/35v28资讯网——每日最新资讯28at.com

C:/ProgramData/35v28资讯网——每日最新资讯28at.com

C:/Program Files/35v28资讯网——每日最新资讯28at.com

C:/Scripts/35v28资讯网——每日最新资讯28at.com

C:/Windows/(可选,可能包含干扰文件)35v28资讯网——每日最新资讯28at.com

示例 PowerShell 脚本:35v28资讯网——每日最新资讯28at.com

$pathsToScan=@("C:/Users","C:/ProgramData","C:/Scripts")$logPath="C:/VBSScriptScan/VbsFiles_$(hostname).csv"$results=foreach($pathin$pathsToScan){if(Test-Path$path){Get-ChildItem-Path$path-Filter*.vbs-Recurse-ErrorActionSilentlyContinue|Select-ObjectFullName,LastWriteTime,Length}}$pathsToScan=@("C:/Users","C:/ProgramData","C:/Scripts")$logPath="C:/VBSScriptScan/VbsFiles_$(hostname).csv"$results=foreach($pathin$pathsToScan){if(Test-Path$path){Get-ChildItem-Path$path-Filter*.vbs-Recurse-ErrorActionSilentlyContinue|Select-ObjectFullName,LastWriteTime,Length}}策略四:扫描自定义 MSI 安装包

例如以下 PowerShell 脚本可分析 MSI 包中嵌入的 VBScript 自定义动作(Action Type 6、38、50):35v28资讯网——每日最新资讯28at.com

Get-ChildItem-Path"C:/MSIRepo"-Recurse-Filter*.msi|ForEach-Object{$msiPath=$_.FullName$sql="SELECT*FROMCustomAction"$installer=New-Object-ComObjectWindowsInstaller.Installer$database=$installer.GetType().InvokeMember("OpenDatabase","InvokeMethod",$null,$installer,@($msiPath,0))$view=$database.OpenView($sql)$view.Execute()$record=$view.Fetch()while($record-ne$null){$actionName=$record.StringData(1)$actionType=[int]$record.StringData(2)if($actionType-eq6-or$actionType-eq38-or$actionType-eq50){Write-Output"⚠VBScriptCustomAction:$actionNamein$msiPath"}$record=$view.Fetch()}}

后续行动建议35v28资讯网——每日最新资讯28at.com

迁移替代方案:参考微软官方文档《VBScript 弃用:时间线与后续步骤》选择现代技术。35v28资讯网——每日最新资讯28at.com

主动禁用 VBScript:在确认无依赖后,通过命令禁用:35v28资讯网——每日最新资讯28at.com

Dism/Online/Remove-Capability/CapabilityName:VBSCRIPT~~~~

影响:禁用后,依赖 VBScript 的进程(如 cscript.exe)将静默失败或报错。35v28资讯网——每日最新资讯28at.com

微软强调,当前阶段企业应尽快完成检测与迁移,避免未来操作系统默认禁用导致业务中断。35v28资讯网——每日最新资讯28at.com

参考资料:35v28资讯网——每日最新资讯28at.com

《VBScript deprecation: Detection strategies for Windows - Windows IT Pro Blog》35v28资讯网——每日最新资讯28at.com

《VBScript deprecation: Timelines and next steps | Windows IT Pro Blog》35v28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-119-151321-0.html微软宣布 VBScript 弃用计划,企业需提前部署检测策略

声明:本网页内容旨在传播知识,不代表本站观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。

显示全文

上一篇:微软 Win11“高级设置”已上线 Dev Beta 版本,可通过 ViVeTool 开启

下一篇:微软发布 Win11 RP 26100.4188 预览版:引入 AI 智能文本操作、优化 HDR 显示

最新热点