今日は、Windowsユーザーに関する最新のPrintNightmareの危機について話し、PCを保護するためのいくつかの推奨事項を示します。 これは、Windowsの印刷キューにある重大な脆弱性です。 米国のサイバーセキュリティ&インフラストラクチャセキュリティエージェンシー(CISA)はそれについて声明を発表し、それ以来、誰もが何か他のことについて話し合っています。 今日は、この問題についてAからZまで議論しています。
PrintNightmare:それはどのように始まったのですか?
6月の初めの8日、Microsoftは「WindowsPrintSpooler Remote CodeExecutionVulnerability」というタイトルのCVE-2021-1675を公開しました。 当時、それは悪用される前に特定され、簡単に修正できるマイナーな脅威のようでした。 したがって、心配する理由はありませんでした。
その後、世界の主要な治安機関は、CVE-2021-1675のメジャーアップデートを警告するステートメントの発行を開始しました。 これらのメッセージは、ユーザーと組織に、この脅威から身を守るための対策を直ちに採用するよう促しました。 同じ時間枠で、マイクロソフトは脆弱性CVE-2021-34527を公開しました。これは、PrintNightmareというニックネームが付けられた脆弱性です。
Microsoftは、Windows PrintSpoolerに影響を与えるリモートコード実行の脆弱性にCVE-2021-34527を割り当てました。 詳細については、https://t.co/OarPvNCX7Oをご覧ください。
—マイクロソフトセキュリティインテリジェンス(@MsftSecIntel) 2021年7月2日
高リスクの評価を受けたCVE-2021-1675とは異なり、PrintNightmareは、リモートでコードが実行される可能性があるため、最初から重大な脆弱性の評価を獲得しました。 それ以来、いくつかの更新があり、Microsoftはこの問題に24時間取り組んできました。 その間、そして決定的な解決策を待っている間に、リスクを軽減するためのいくつかの推奨事項を見つけることもできました。
PrintNightmareとは何ですか?
問題は、Windowsの印刷キューの機能、特にRpAddPrinterDriverEx()にあり、その名前が示すように、システムに新しいプリンターをインストールできます。 プリントマネージャはアクセスを制限しないため、認証されたユーザーはリモートで使用できます。
では、ユーザーがリモートでプリンターをインストールできることの問題と、PrintNightmareが非常に危険な理由は何でしょうか。 プリンターのインストールについて話しているときは、そのドライバーを指します。 誰かが権限なしでドライバーをインストールできる場合、それは多くの悪意のある要素を含む可能性があります。 したがって、システムにアクセスし、RpAddPrinterDriverEx()を使用して悪意のあるコードを実行する攻撃者は、特権を昇格させ、侵害されたシステムにペイロードを送信し、PCを完全に制御することさえできます。
プリントマネージャはWindowsのすべてのバージョンに存在するコンポーネントであるため、Microsoftは、オペレーティングシステムのインストールがPrintNightmareを使用して攻撃を受けやすいことを示しています。 したがって、Windowsのバージョンが何であれ、原則として、システムはPrintNightmareにさらされているため、自分自身を保護するための対策を講じる必要があります。
PrintNightmareから身を守る方法は?
PrintNightmareを修正するためのMicrosoftパッチはすでに存在しますが、実際にはそれは効果的ではありません。
ただし、これに入る前に、最初に述べたことを覚えて、CVE-2021-1675とCVE-2021-34527を区別する必要があります。 前者の場合、Microsoftは、この脆弱性の特定のリスクを軽減する修正プログラムをすでにリリースしています。 ただし、これらのパッチは、CVE-2021-34527に関連する問題に対処していません。
一方、Microsoftは昨日、公式にサポートされなくなったものを含め、さまざまなバージョンのWindows用のPrintNightmareのパッチをリリースしました。
- KB5004945:Windows 10 20H1、20H2および21H。
- KB5004946:Windows10バージョン1909
- KB5004947:Windows10バージョン1809およびWindowsServer 2019
- KB5004949:Windows10バージョン1803
- KB5004950:Windows10バージョン1507
- KB5004951:Windows 7SP1およびWindowsServer 2008 R2 SP1
- KB5004958:Windows8.1およびWindowsServer 2012
- KB5004959:Windows Server 2008 SP2
悪いニュースはこれらのリリースの後に来始めました、何人かのユーザーは公式パッチが不完全で効果がないと主張します。
0Patchは、PrintNightmareに対して有効であることが証明された非公式パッチをリリースしましたが、公式Microsoftパッチの適用により、0patchによって開発されたパッチの影響が軽減されるため、システムはこのセキュリティ問題に基づく攻撃に対して再び脆弱になります。
PrintNightmareに対して0patchを使用している場合は、7月6日のWindowsUpdateを適用しないでください。 ローカルの攻撃ベクトルを修正しないだけでなく、リモートのベクトルも修正しません。 ただし、localspl.dllが変更されるため、問題を修正するパッチの適用が停止します。 https://t.co/osoaxDVCoB
— 0patch(@ 0patch) 2021年7月7日
Microsoftはこの問題に取り組んでいると述べていますが、パッチによって提供される保護はすでに十分であるため、0patchのパッチが使用されている場合はWindowsの自動更新を許可しないことをお勧めします。 もう1つの可能性は、各システムで不要な印刷サービスを無効にすることです。 たとえば、サーバーは、プリントサーバーでない限り、セキュリティ上の理由からこれらのサービスを無効にする必要があります。 また、エンドポイントについても、まったく同じように、印刷に関連するアクティブなサービスを最小限に抑えます。特に、印刷しないシステムについて話している場合はなおさらです。
印刷キューサービスの現在のステータスを確認するには、PowerShellコンソールを開き、コマンドラインでGet-Service -NameSpoolerと入力する必要があります。 その結果、現在のステータスを取得します。 そのシステムではPrintNightmareドアが閉じたままなので、サービスがオフまたは無効になっていることが示されている場合でも、心配する必要はありません。 サービスがアクティブな場合、プリントサーバーについて話していない限り、2つの可能性があります。その場合、サービスが機能しなくなるため、これらの対策を適用できません。
最初のものは間違いなく最も抜本的であり、そのシステムから印刷したことがない場合にのみ使用できます。 サービスのステータスを確認するために使用するのと同じPowershellコンソールで、次のコマンドを入力する必要があります。
Stop-Service -Name Spooler -Force
Set-Service -Name Spooler -StartupType Disabled
1つ目はWindows印刷サービスをすぐに停止し、2つ目は構成を変更して、システムの再起動後に再度読み込まれないようにします。 MicrosoftがPrintNightmareを完全に修正するパッチをリリースしたら、このコマンドで再度アクティブ化できます。
Set-Service -Name Spooler -StartupType Enabled
このようにして、システムを再起動した後、そのシステムから再び正常に印刷できるようになります。

2番目の方法は、システムのプリントサーバー機能のみを無効にすることです。 このようにして、システムから印刷することはできますが、ネットワーク上の他のコンピューターやデバイス用のプリントサーバー機能はなくなります。 これを行うには、ローカルグループポリシーエディターにアクセスする必要があります。また、[ローカルコンピューターポリシー]>[コンピューターの構成]>[管理用テンプレート]>[プリンター]に移動し、[印刷ジョブマネージャーにクライアント接続の受け入れを許可する]エントリを探します。
次に、それをダブルクリックしてステータスを確認します。PrintNightmareのリスクを防ぐために、ステータスを無効にする必要があります。 したがって、「未構成」または「有効」に設定されている場合は、この値を変更してシステムを再起動します。
PrintNightmare用のMicrosoftパッチをすでにインストールしている場合はどうなりますか?
これを読むまでに、Microsoftの公式パッチがすでにインストールされている可能性があります。 問題は、PrintNightmareの問題が解決されないことです。 このような場合、Windowsレジストリ設定を変更する必要があります。 これを行う最も簡単な方法は、コンソールを開いて(コマンドプロンプト)、次のコマンドを入力することです。
「HKEY_LOCAL_MACHINE ソフトウェアポリシー Microsoft Windows NT プリンター PointAndPrint」/ v RestrictDriverInstallationToAdministrators / t REG_DWORD / d 1 / f
示されているとおりに正確に入力すると、コピーと貼り付けを行うことができます。 長さのために分割されますが、単一のコマンドであることに注意してください。
原則として、これらの対策はすでに必要なレベルのセキュリティを提供しているはずですが、Microsoftが決定的なソリューションを公開するのを待つ必要があるのは事実です。








