ニュース

「VBScript」の非推奨・削除に備えよ ~MicrosoftがVBS依存を検出する方法を案内

「VBScript」の既定無効化は2027年頃

公式ブログ「Windows IT Pro Blog」

 米Microsoftは5月17日(現地時間)、公式ブログ「Windows IT Pro Blog」を更新した。「VBScript」の非推奨フェイズが次の段階へ移行するにあたり、その検出方法を案内している。

 「VBScript」(Microsoft Visual Basic Scripting Edition、VBS)は1996年に初めて導入された軽量スクリプト言語で、システムの自動化やWebサイトの構築に広く活用されていた。しかし、現在では「PowerShell」や「JavaScript」といった、より強力で汎用性の高いスクリプト言語にとって代わられているのが実情だ。現在でもローカル環境でバッチファイルの代わりとしてまだ一定の需要があるが、セキュリティ攻撃で狙われることも少なくなく、2023年10月にとうとう非推奨とされた。

 現在は3フェイズにわけた廃止スケジュールのうち、第1段階が進行中。2027年頃にはデフォルトでは無効となる。

  • フェイズ1:「Windows 11 バージョン24H2」でオンデマンド機能(FOD)に。プリインストールされ、既定で有効
  • フェイズ2:2027年頃に「VBScript FOD」がデフォルト無効に。利用する場合は追加インストールが必要
  • フェイズ3:完全な廃止(時期は未定)。依存するアプリやシステムは動作しなくなる

 「VBScript」を他のソリューションへ移行するにはまず、システムのどの部分が「VBScript」(vbscript.dll)に依存しているのかを把握する必要がある。その検出手段として、同社は4つの手段を提案している。

  • システムログツール「Sysmon」を用いて「VBScript」の使用状況を監視:大規模に展開した場合のパフォーマンス低下や運用のオーバーヘッドに注意
  • 「VBScript」の依存関係を見直す:多くの企業環境ではグループポリシーのスクリプトやタスクスケジューラーで「VBScript」が用いられているため、そこを重点的に調査する
  • システム全体で「.vbs」ファイルをスキャンする:上記システムに紐づけられていない、またはユーザーが一時的に利用しているスクリプトは拡張子で洗い出す。多くの場合、「C:Users」や「C:ProgramData」、「C:Program Files」、「C:Windows」などのパスに格納されている
  • カスタムMSIパッケージをスキャンして、埋め込まれたVBScriptを探す:インストーラーのなかには内部で「VBScript」を利用しているものがある。見逃しやすいので注意したい

 公式ブログにはより詳細な手順やサンプルとなる「PowerScript」スクリプトが掲載されているので、ぜひ参照してほしい。実際に「VBScript」を無効にした環境を用意して、システムをテストするといった方法も有効だ。

システム全体で「.vbs」ファイルをスキャンする「PowerScript」の例