elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  ¿Cómo obtengo el RetAddress de una función que está con detour?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Cómo obtengo el RetAddress de una función que está con detour?  (Leído 3,176 veces)
josue9243

Desconectado Desconectado

Mensajes: 67


Ver Perfil
¿Cómo obtengo el RetAddress de una función que está con detour?
« en: 17 Agosto 2017, 04:01 am »

¿Cómo obtengo el RetAddress de una función que está con detour?, ejemplo:

CreateFileA retorna el valor de el address de la función la cual lo llamo, ¿Cómo hago para obtener TODOS los ret que manda?.

EDIT: Seria como el ESI (?


« Última modificación: 17 Agosto 2017, 04:05 am por josue9243 » En línea

BloodSharp


Desconectado Desconectado

Mensajes: 811


¡ Hiperfoco !


Ver Perfil WWW
Re: ¿Cómo obtengo el RetAddress de una función que está con detour?
« Respuesta #1 en: 17 Agosto 2017, 04:21 am »

¿Cómo obtengo el RetAddress de una función que está con detour?, ejemplo:

CreateFileA retorna el valor de el address de la función la cual lo llamo, ¿Cómo hago para obtener TODOS los ret que manda?.

Obtenés el retaddress con 2 líneas en assembler en una función y luego los vas metiendo en una lista en tu hook...

EDIT: Seria como el ESI (?

esp o ebp y luego a eax


B#


En línea



josue9243

Desconectado Desconectado

Mensajes: 67


Ver Perfil
Re: ¿Cómo obtengo el RetAddress de una función que está con detour?
« Respuesta #2 en: 17 Agosto 2017, 04:26 am »

Pero pasame el __asm en código ;_; sino lo hubiera hecho yo jajajjaaja

si pongo:

dword myret;

__asm
{
mov esi, eax;
mov eax, myret;
}

no creo que ande D:
« Última modificación: 17 Agosto 2017, 04:28 am por josue9243 » En línea

BloodSharp


Desconectado Desconectado

Mensajes: 811


¡ Hiperfoco !


Ver Perfil WWW
Re: ¿Cómo obtengo el RetAddress de una función que está con detour?
« Respuesta #3 en: 17 Agosto 2017, 04:38 am »

si pongo:

Código
  1. dword myret;
  2.  
  3. __asm
  4. {
  5. mov esi, eax;
  6. mov eax, myret;
  7. }

no creo que ande D:




Código
  1. DWORD STDCALL GetCaller();
  2. asm(".globl _GetCaller;\n"
  3. "_GetCaller:\n"
  4. "movl 0x4(%ebp),%eax;\n"
  5. "ret;");


B#
En línea



josue9243

Desconectado Desconectado

Mensajes: 67


Ver Perfil
Re: ¿Cómo obtengo el RetAddress de una función que está con detour?
« Respuesta #4 en: 17 Agosto 2017, 04:39 am »




Código
  1. DWORD STDCALL GetCaller();
  2. asm(".globl _GetCaller;\n"
  3. "_GetCaller:\n"
  4. "movl 0x4(%ebp),%eax;\n"
  5. "ret;");


B#

JAAJAJAJJAJAAJA

Que grande bloodsharp :v, el tema es que lo pongo en la misma función del detour?, o donde lo pondria?.

Expliquese (? ah re :V
En línea

BloodSharp


Desconectado Desconectado

Mensajes: 811


¡ Hiperfoco !


Ver Perfil WWW
Re: ¿Cómo obtengo el RetAddress de una función que está con detour?
« Respuesta #5 en: 17 Agosto 2017, 05:00 am »

Que grande bloodsharp :v, el tema es que lo pongo en la misma función del detour?, o donde lo pondria?.

Código
  1. DWORD STDCALL DondeEsta();
  2. asm(".globl _DondeEsta;\n"
  3. "_DondeEsta:\n"
  4. "movl 0x4(%ebp),%eax;\n"
  5. "retn;");
  6.  
  7. VOID Funcion(parametros...)
  8. {
  9. DWORD dwAquiEsta=DondeEsta();
  10. vectorlistaAgregar(dwAquiEsta);
  11. }


Código
  1. alguna direccion - push parametros;
  2. alguna direccion - call Funcion;
  3. dwAquiEsta dir   - blablabla


Perdón pero me hiciste tentar otra vez...  :laugh:


B#
« Última modificación: 17 Agosto 2017, 05:06 am por BloodSharp » En línea



josue9243

Desconectado Desconectado

Mensajes: 67


Ver Perfil
Re: ¿Cómo obtengo el RetAddress de una función que está con detour?
« Respuesta #6 en: 17 Agosto 2017, 18:39 pm »

Sep anda, tenkiu.

Lo que pasa es que flashe que el detour lo llamaba otra cosa y re que tenia un jmp :V xD
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
quisiera q me dijeran como esta esta funcion recursiva
Programación C/C++
eduardo17445 7 3,786 Último mensaje 2 Noviembre 2012, 19:20 pm
por flony
una idea de como hacer esta funcion en c++
Programación C/C++
eduardo17445 3 2,286 Último mensaje 25 Abril 2013, 05:25 am
por flony
mu pueden dar una idea de como hacer esta funcion en c++
Programación C/C++
eduardo17445 4 2,448 Último mensaje 29 Abril 2013, 01:51 am
por flony
Como mejorar esta función
Programación General
Eduarjr 0 1,779 Último mensaje 23 Diciembre 2016, 03:46 am
por Eduarjr
¿Por que obtengo esta salida? C++
Programación C/C++
JenselG 1 3,923 Último mensaje 12 Enero 2021, 22:24 pm
por Danielㅤ
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines