PrintNightmare を止める

2021年7月7日 | Moshe Hayun

組織にとって重要なネットワーク脅威が浮き彫りになった Kaseya VSA ランサムウェア とPrintNightmare の発生により、サイバー業界にとって先週はとても忙しい週でした。

PrintNightmare は、Windows のプリント スプーラー に存在する脆弱性を指します。この脆弱性は、10 年以上前にイランの核遠心分離機を破壊するために使用された攻撃方法として、多くの人の記憶に残っているかもしれません。この新しい脆弱性は、2 つの側面から構成されています。1 つ目はローカルでの特権昇格で、第三者が低いレベルの特権しか持っていないコンピュータに対して管理者やシステムレベルの権限をもたせることを可能にし、2 つ目はリモートでのコード実行アクセスを可能にします。

PrintNightmare のはじまり (CVE-2021-1675)
6 月初旬、マイクロソフトは、Windows のプリント スプーラー サービスに 存在する脆弱性に対応しました。この脆弱性は、CVSS スコア 6.8 という中程度のスコアで初めて登場し、LPE(ローカル特権昇格)の脆弱性として挙げられていました。

二重のトラブル : LPE から LPE + RCE へ
マイクロソフトがこの脆弱性を公表してから 1 週間後、この脆弱性を発見した研究者は、CVE-2021-1675 が単なる LPE 脆弱性ではなく、RCE 脆弱性でもあることを実証する 動画を公開 しました。

CVE-2021-1675> CVE-2021-34527

約 2 週間後の 6 月 21 日、CVE-2021-1675 の CVSS スコアが中程度の 6.8 から重大な 7.8 に更新され 、定義も LPE から RCE に更新、さらに、新しい CVE 識別子が発行されました。PrintNightmare としても知られている CVE-2021-34527  です。

ここからが面白いところです。マイクロソフト社は、同じサービスに関して、1 ヶ月足らずの間に 2 つの異なる CVE を発行しました。マイクロソフト社によると、この2つの CVE は、RpcAddPrinterDriverEx 関数の異なる脆弱性に対処しているため、類似しているが別のもので、攻撃ベクトルも異なるといっています。

6 月中旬、BlackHat が公式 Twitter アカウントでツイートした、今年の BlackHat Las Vegas で開催される研究発表「Diving in to Spooler」を Sangfor セキュリティチームの別の リサーチャーリツイート しました。スプーラー: Discovering LPE and RCE Vulnerabilities in Windows Printer です。

我々がすでに PrintNightmare として知っていると発表するのでしょうか?あるいは、スプーラー サービスが当初考えられていたよりも脆弱で、今後もさらに多くの脆弱性が発生する可能性があることが発表されるのでしょうか?発表予定は 8 月 8 日で、それまでこの疑問は消えません。

6 月 29 日、QiAnXin セキュリティチームが Twitter で、CVE-2021-34527 の完全な RCE のデモを示すツイートと動画を投稿しましたが、技術的な詳細はありませんでした。その後、Sangfor セキュリティチームの研究者が、自分の GitHub アカウントに公開されたエクスプロイト POC を(偶然だと言う人もいますが)公開しました。これは、すべての Windows OS でデフォルトで有効になっている未パッチのエクスプロイトであり、ハッカーに大きなチャンスをあたえてしまうため、自分たちの過ちに気づいた後、すぐにこのリポジトリを削除しました。

しかし、そのダメージは大きく、POC を削除した時点でコードは何度もフォークされていました。

ここにいくつかの実例があります:

残念ながら、Windows Server 2016、Windows 10、バージョン 1607、および Windows Server 2012 のセキュリティ更新プログラムは短期間延期されますが、近日中に提供される予定です。

この欠陥は何で、どのようにして悪用を防ぐことができるのでしょうか?

この脆弱性の根本的な原因は、 RpcAddPrinterDriverEx という関数にあります。

この脅威がなぜ深刻なのかを理解するために、プリントドライバに関する 2 つの基本的な事実を紐解いてみましょう:

  1. プリントドライバは、設計上、マシン上のシステムとして完全な実行能力を持っている
  2. リモート認証機能には欠陥があり、認証されたユーザーなら誰でもリモートでプリントドライバーを追加できる。繰り返しになりますが、これはとても重要なポイントです。なぜなら、低いレベルのアクセス権をもっているユーザーでも、このエクスプロイトを使えば、管理者やシステムレベルのアクセス権を得ることができるからです。

この 2 つの事実を組み合わせると、認証されたユーザがシステム権限で完全なリモートコード実行能力を得ることができる、パッチのない脆弱性が存在することになります。

多くの人が最初に求め、問いかける質問は、「マイクロソフトのパッチは私を守ってくれるのか?」

マイクロソフト社のパッチは、この問題を完全に解決するものではありませんが、パッチと適切な緩和策を組み合わせることで、強力な保護を提供します。

サイバー・セキュリティ・コミュニティが力を合わせ、シナリオ・フロー・チャート(下記)を作成し、どのような場合にエクスプロイトが機能し、どのような場合に失敗するのかを示しています。

パッチ以外の緩和策

フローグラフでお気づきのように、プリントスプーラーにアクセスできない場合は、この脆弱性を利用することはできません。したがって、このエクスプロイトから組織を守るもう 1 つの方法は、この機能が必要でないマシンでスプーラー サービスを無効にすることです。

このサービスを無効にするには、Windows 10 の グループポリシー 、または PowerShell で 2 つの簡単なコマンドを使用して行うことができます。

サービスを停止する: Stop-Service -Name Spooler -Force

スタートアップから無効にする: Set-Service -Name Spooler -StartupType Disabled

Deep Instinct はどのように役立つのでしょうか?

この攻撃の性質上、悪質な行為者は潜在的にリバースシェルを獲得して スクリプトベースの攻撃 を実行したり、追加のペイロードのドロッパーとして使用したりすることができます。

Deep Instinct には、これらの攻撃を処理するためのいくつかのソリューションがあります。Deep Instinct Script Control ポリシーは、この種の攻撃をブロックすることができます。また、Deep Instinct は、当社のニューラルネットワーク技術の中核にあるディープラーニングにより、悪意のあるスクリプトを事前に実行することを防ぎます。このような脅威を防ぐだけでなく、ゼロデイマルウェアやランサムウェアを防ぎ、ランサムウェアが発生しないことを 300 万ドルの保険で保証しています。

当社の予防第一のアプローチについては、新しい eBook 「ランサムウェア:事後対応より予防が大事 」また、実際にご覧いただけるデモをご希望の方は、こちらから お問い合わせください。