
CVE-2020-1048 bypass: binary planting PoC
Peleg Hadar (@peleghd) e Tomer Bar da SafeBreach (@safebreach) foram reconhecidos pela Microsoft pelo CVE-2020-1048, uma vulnerabilidade do Spooler do Windows que permite uma elevação de privilégio no Windows 7 e posteriores.
Alguns detalhes foram divulgados por Alex Ionescu (@aionescu) e Yarden Shafir (@yarden_shafir) em seu excelente post do blog PrintDemon: Print Spooler Privilege Escalation, Persistence & Stealth (CVE-2020-1048 & more). Usando esse conhecimento, encontrei um desvio para a correção usando pontos de junção e links simbólicos do Windows (kudos a James Forshaw @tiraniddo).
Meu relatório foi uma duplicata porque a causa raiz havia sido relatada anteriormente por outra pessoa e o relatório foi atribuído ao CVE-2020-1337, um CVE muito legal :-)
Este código C# permite colocar uma DLL maliciosa no diretório local C:\windows\system32 para ser carregada por uma aplicação ou serviço vulnerável a sequestro de DLL.
Post do blog: CVE-2020-1337: my two cents; também em espanhol.
Use o Visual Studio para obter um binário autocontido. A mágica é feita usando os seguintes pacotes Nuget:
Coloque o binário e seu arquivo malicioso no mesmo caminho e execute o primeiro passo:

Reinicie o sistema manualmente e execute o segundo passo para finalmente plantar sua DLL com seu nome final:
