unc4nny Posted January 23, 2021 at 05:28 PM Share Posted January 23, 2021 at 05:28 PM Oi. Talvez voce ja tenha se deparado com algumas amostras de Malware em que ele acessa o PEB para depois acessar a export table de alguma Dll e resolver uma funcao em runtime, evitando deixar strings no arquivo compilado para dificultar nossas vidas. Acredito que o nome dessa tecnica seja "Resolucao dinamica da IAT" (@Fernando Mercês se eu tiver falando abobrinha mim disgurpe pfvo D:). Nao pretendo escrever um artigo sobre como funciona isso, ja que eu provavelmente nao sei o suficiente, masss... Eu escrevi um Proof of Concept (PoC) e coloquei ele no meu GitHub. Segue alguns prints que eu tirei durante a execucao dele: A funcao LoadLibraryA sendo carregada e posteriormente chamada: Conteudo no registrador eax: Conteudo na pilha (note o argumento sendo passado) Visao no Ghidra: O codigo fonte esta disponivel no meu repositorio. Se voce tem interesse em dar uma olhada, talvez ajude voce a reconhecer esses padroes mais rapido na proxima vez que voce for analisar um malware. Essa documentacao visual do Corkami tambem eh muito util. Eu ainda estou trabalhando no codigo, eu pretendo deixar ele muito bem documentado e legivel, ja que eu ainda acho que a documentacao sobre esse assunto ainda eh meio escassa. Eventualmente, eu ainda pretendo fazer de um modo que nao deixe uma string sequer no programa. Mas se voce quer algo que funciona logo, mesmo que nao muito bem documentado (na minha opiniao podia ter mais comentarios, mas como dizem... bons codigos falam por si mesmo), existe o lazy_importer. Eu fui obrigado a usar as definicoes de struct do codigo dele, ja que havia se passado uma semana e eu nao fazia idea do porque estava dando Acess Violation 0x000005. Ainda nao descobri o porque, mas nao havia muita diferenca entre as definicoes dele e minha, enfim... (mas aprendi sobre o reinterpret_cast lendo o codigo dele). 1 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.