PrintNightmare (CVE-2021-34527)
Neste artigo, apresentaremos o que você precisa saber sobre a
vulnerabilidade PrintNightmare (CVE-2021-34527).
PrintNightmare é como tem sido chamado uma vulnerabilidade crítica que permite
Escalação de Privilégio (EoP ou LPE) e RCE (Remote Code Execution) através do Windows Print
Spooler, e atinge versões do Windows 7 à Windows Server 2019. A primeira vez que esse bug
foi identificado recebeu o identificador CVE-2021-1675, com correção no update “Microsoft
June 2020 Patch Tuesday”, em junho de 2021.
A falha foi conhecida também como The Print Spooler bug, baseada no guia de
atualização de segurança da Microsoft que descreve a falha como Windows Print Spooler
Vulnerability.
Entretanto, foi somente após pesquisadores da empresa de Cyber Security Sangfor
documentarem e divulgarem abertamente uma PoC (Proof of Concept), demonstrando como
explorar uma falha que ao contrario do que pensavam, não era aplicável apenas ao bug reportado pelo CVE-2021-1675, então apesar de também tratar uma vulnerabilidade no Windows Print Spooler, eles
acidentalmente divulgaram uma vulnerabilidade de execução remota nova e que não era
impedida pela última atualização do Patch Tuesday, o PrintNightmare (CVE-2021-34527).
Análise
Apesar da Microsoft ter liberado um patch de atualização para mitigar contra esses
ataques, se esses valores continuarem presentes na máquina, ela ainda estará vulnerável.
REG QUERY "HKLM\Software\Policies\Microsoft\Windows NT\Printers\PointAndPrint" HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\Printers\PointAndPrintRestrictDriverInstallationToAdministrators REG_DWORD 0x0 NoWarningNoElevationOnInstall REG_DWORD 0x1
Um atacante pode explorar essa vulnerabilidade para realizar o bypass da autenticação de
segurança do RpcAddPrinterDriverEx e instalar uma unidade maliciosa no servidor de
impressão. Se o usuário controlado pelo atacante estiver em um domínio, o atacante poderá
se conectar ao serviço Spooler no DC e explorar essa vulnerabilidade para instalar unidades
maliciosas no DC a fim de controlar todo o domínio.
(Imagem: github)
Tentando determinar alvos vulneráveis
(Imagem: github)
Existe um Python para Scannear sua rede procurando por MS-PAR e MS-RPRN.
Para utiliza-lo é necessário instalar o Impacket (que é uma coleção de Python para trabalhar
com protocolos de rede)
https://github.com/SecureAuthCorp/impacket.gitDepois instalar a ferramenta ItWasAllADream e os seguintes comandos:
git clone https://github.com/byt3bl33d3r/ItWasAllADream
cd ItWasAllADream && docker build -t itwasalladream
docker run -it itwasalladream -u user -p password -d domain 192.168.1.0/24
Como a exploração exige que você seja autenticado ao Active Directory, você precisa fornecer
credenciais. Se a senha não for fornecida, ela solicitará que você digite.
Depois que terminar, você verá um arquivo em seu diretório atual com os
resultados.report_.csv.
Impacto
Essa vulnerabilidade pode ser usar para LPE e RCE, sendo que para RCE, você precisa de um
usuário para autenticar no serviço de Spooler. No entanto, isso ainda é crítico no ambiente
Domain. Como normalmente o DC terá o serviço Spooler habilitado, um usuário de domínio
comprometido pode usar essa vulnerabilidade para controlar todo o DC.
0 comentários: