
Vazamento de endereços do kernel de consumidores de ETW. Requer privilégios de administrador.
Este repositório contém um PoC para um programa que utiliza ETW para vazar endereços de memória do kernel. Ele faz isso criando um consumidor (pode ser de quase qualquer provedor, já que quase todos vazam endereços do kernel) e solicitando um stack trace dele. Quando o stack trace é recebido, ele é analisado para extrair os endereços de memória do kernel. Como a Microsoft não considera o acesso de administrador ao kernel um limite de segurança, essa situação não mudará tão cedo. Pode ser útil em alguns cenários de exploração (por exemplo, vazar o endereço base do kernel se você souber que um provedor de ETW vaza um endereço do kernel que está em um certo offset do endereço base do kernel ou qualquer outro endereço interessante, aliás) ou apenas como um truque de festa.
Tenha em mente que são necessários privilégios administrativos para começar a consumir de provedores de ETW. Se já houver um programa que consuma eventos de ETW e o usuário comum tenha acesso ao trace, o usuário comum também poderá vazar endereços do kernel. Ele não fornece nenhum vazamento de dados reais do kernel, apenas endereços do kernel (exceto talvez em casos extremos).

Você pode ver um exemplo de como usar em EtwLeakKernel. Você também pode usar qualquer outro consumidor de ETW e solicitar o stack trace; neste exemplo, está usando Microsoft-Windows-Kernel-Network.
git clone https://github.com/Idov31/EtwLeakKernel --recursive