「PrintNightmare」脆弱性(CVE-2021-34527)の対応で、PoweShellのGet-EventLogがコケる
サーバAでサーバBのイベントログを取得するPowerShellのコードがあります。
以下は検証のためのコードです
Get-EventLog -ComputerName "SVNAME" -LogName "Application" -After "2021/07/01 00:00:00" -Before "2021/07/31 00:00:00" -EntryType "Error","Warning" ` | Select-Object EntryType,TimeGenerated,EventID,Source,MachineName | epcsv "$PSScriptRoot\evt.csv" -Encoding default
これが、こんなエラーを吐いて止まります
先月までは問題なく動いていましたので、PrintNightmare対応のためにインストールしたKB5004948が関係しているような気がします。
ただ、このパッチはリモートコードが実行される脆弱性に対するものですから、字面通りに受け取るなら、サーバBで実行したスクリプトに対してサーバAが応答を拒否、という結果になりそうな気がするのですが。
検証のため逆で実行してみましょう。
同じ結果になりました。
さらに、KB5004948をインストールしていないサーバB→サーバCを試したところ、エラーなく完了しました。
このことから推測するに、保護レベルが同一でない場合は、上記のエラーになってしまうようです。
<結果>
- パッチ適用→パッチ適用:OK
- パッチ未適用→パッチ未適用:OK
- パッチ適用→パッチ未適用:エラー
- パッチ未適用→パッチ適用:エラー
他にも動かなくなるものがありそうです。
(サーバA,B,CはすべてWindows Server2016)