Meu Gs já tem uma DLL hookada com função! Queria dar o segundo hook em uma outra DLL sem função, como eu faço isso se o EntryPoint está na primeira DLL, se eu fosse hookar a segunda não teria EntryPoint, Porque ele já ta na primeira.
Versão Imprimível
Meu Gs já tem uma DLL hookada com função! Queria dar o segundo hook em uma outra DLL sem função, como eu faço isso se o EntryPoint está na primeira DLL, se eu fosse hookar a segunda não teria EntryPoint, Porque ele já ta na primeira.
Você pode fazer o seguinte no primeiro hook geralmente tem no final 1 "JMP" indo para uma outra dll, é so você fazer o mesmo esquema de hook para a 2º DLL ai o JMP dessa 2º DLL você coloca o offset que está na 1º e na 1º você coloca o offset onde vai estar PUSH nome da dll...
Exemplo:
Hook1:
0x800 Push ...
0x802 Call..
0x804 Push...
Antes o JMP era JMP 0x50..
Agora: 0x806 Jmp 0x900;
Hook2:
0x900 Push ...
0x902 Call..
0x904 Push...
0x906 Jmp 0x50; <- para ir a dll anterior
Não sei se deu para entender... mas espero ter ajudado
Sim eu entendi, mas o EntryPoint continua na primeira dll e não na JMP. Por que eu acho que quando o cara terminou o hook, ele tirou o entrypoint original e colocou na primeira dll dele, entendeu?
Usa o Lord PE para mudar o entry point :)
Ai a outra dll fica sem?
Cara você dando o JMP para a 2º DLL ele vai chamar ela não precisa necessariamente do entrypoint estar nela estando na primeira ao abrir o executável ele ele vai rodar lá ai passando no jmp vai para a 2º...
Mano muito obrigado, são poucos os que ajudam e você me ajudou!