Este código foi desenvolvido para fins educativos e de pesquisa em segurança. Não o utilize para propósitos maliciosos.
Este é um projeto básico escrito em C++, que tem a capacidade de realizar um patch na DLL do amsi.dll
em um processo do powershell.exe
que esteja em execução.
- Localiza o processo
powershell.exe
e obtém seu ID. - Carrega a biblioteca
amsi.dll
e encontra a funçãoAmsiScanBuffer
. - Calcula o endereço do
AmsiScanBuffer
+0x95
para chegar no endereço necessário da função para aplicar o patch. - Modifica as permissões de memória para permitir a escrita e altera um byte (de
0x74
para0x75
), conseguindo assim "desativar" a verificação de segurança do AMSI. - Restaura as permissões de memória e finaliza.