Windows logo surrounded by fire

Windows 10 および Windows 11 で、不正な形式の署名で署名されたファイルが Mark-of-the-Web セキュリティ警告を回避できるようにする無料の非公式パッチがリリースされました。

先週末、 攻撃者がスタンドアロンのJavaScript ファイルを使用して、被害者のデバイスに Magniber ランサムウェアをインストールしていたことを報告しました。

ユーザーがインターネットからファイルをダウンロードすると、Microsoft はそのファイルに Mark-of-the-Web フラグを追加します。

これにより、オペレーティング システムは、ファイルの起動時に次のようにセキュリティ警告を表示します。

Windows Mark-of-the-Web セキュリティ警告
Windows Mark-of-the-Web セキュリティ警告
ソース: BleepingComputer

Magniber JavaScript ファイルの特徴は、Mark-of-a Web が含まれていたにもかかわらず、起動時に Windows がセキュリティ警告を表示しなかったことです。

ANALYGENCE の上級脆弱性アナリストであるWill Dormann が分析した後、彼は JavaScript ファイルが不正な形式の署名を使用してデジタル署名されていることを発見しました。

これらの不正な署名のいずれかを持つ悪意のあるファイルを開くと、Microsoft SmartScreen によってフラグが付けられてセキュリティ警告が表示される代わりに、Windows はプログラムの実行を自動的に許可します。

以下の画像は、この脆弱性により、不正な形式の署名を持つファイル (「calc-othersig.js」) が、Mark-of-the-Web セキュリティ警告を回避する方法を示しています。

Windows のゼロデイ バイパス セキュリティ警告のデモンストレーション
Windows のゼロデイ バイパス セキュリティ警告のデモンストレーション

Microsoft は問題を認識しており、調査中であると述べました。

無料の非公式パッチがリリース

このゼロデイ脆弱性はランサムウェア攻撃で積極的に悪用されるため、0patch マイクロパッチ サービスは、Microsoft が公式のセキュリティ アップデートをリリースするまで使用できる非公式の修正プログラムをリリースすることを決定しました。

0patch のブログ投稿で、共同創設者の Mitja Kolsek は、このバグは Windows SmartScreen がファイル内の不正な署名を解析できないことが原因であると説明しています。

SmartScreen が署名を解析できない場合、Windows はエラーを表示するのではなく、誤ってプログラムの実行を許可します。

「Patrick と Will によって発見された不正な署名により、署名を解析できなかったときに SmartScreen.exe が例外をスローし、その結果、SmartScreen がエラーを返しました」と Kolsek は説明します。

Kolsek 氏は、彼らのパッチは攻撃シナリオの大部分を修正しますが、彼のパッチをバイパスする状況もある可能性があると警告しました。

「私たちのパッチは最も明白な欠陥を修正しますが、その有用性はアプリケーションが shdocvw.dll の関数 DoSafeOpenPromptForShellExe を使用してファイルを開くことに依存し、他のメカニズムには依存しません」と Kolsek は警告します。

「Windows にそのようなメカニズムが他にあることは認識していませんが、技術的には存在する可能性があります。」

Microsoft がこの脆弱性に対処する公式の更新プログラムをリリースするまで、0patch は以下の影響を受ける Windows バージョン用の無料パッチを開発しました。

  1. Windows 11 v21H2
  2. Windows 10 v21H2
  3. Windows 10 v21H1
  4. Windows 10 v20H2
  5. ウィンドウズ 10 v2004
  6. ウィンドウズ 10 v1909
  7. Windows 10 v1903
  8. ウィンドウズ 10 v1809
  9. ウィンドウズ 10 v1803
  10. Windows Server 2022
  11. Windows サーバー 2019

Windows デバイスにマイクロパッチをインストールするには、無料の 0patch アカウントを登録し、そのエージェントをインストールする必要があります。

エージェントがインストールされると、それをブロックするカスタム パッチ適用ポリシーがない場合、システムの再起動を必要とせずにパッチが自動的に適用されます。