• Jueves 28 de Marzo de 2024, 19:17

Autor Tema:  Problema Hookeando Zwdeletefile  (Leído 2960 veces)

Zirrosis

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Problema Hookeando Zwdeletefile
« en: Miércoles 23 de Enero de 2008, 15:40 »
0
Tengo un problema hookeando la ZwDeleteFile, e escrito un modulo de kernel basandome en ejemplos que encontre por la red y el codigo me hookea bien, ya que verificandolo con un "visor de SSDT" veo que si me hookea la dirección correctamente. El problema es que cuando llamo a la DeleteFile desde Ring3 no se llama a mi función, y no encuentro explicacion a eso. :blink:

La direcciónes me las da correctamente, y se hookea bien, pero a la hora de llamar a DeleteFile nunca aparece el emnsage de Me llaman por la pantalla del DebugView....alguna idea???  :unsure:

Un Saludo.

EI: saco el codigo, no es necesario y no quiero que prolifere.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #1 en: Miércoles 23 de Enero de 2008, 16:20 »
0
Primero y principal te recomiendo no usar hooks, especialmente para temas de filesystem, Microsoft provee maneras documentadas y correctas que pueden ser usadas en la amplia mayoria de los casos para no utilizar un hack como son los hooks.

Si comprobas el codigo de DeleteFileA/W vas a ver que no llaman a ZwDeleteFile (funcion solo disponible en XP y superiores por cierto) sino que hacen ZwOpenFile + ZwSetInformationFile para borrar un archivo. Consulta la documentacion para esta ultima y vas a ver como funciona, sino desensambla DeleteFileA/W.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

Zirrosis

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #2 en: Miércoles 23 de Enero de 2008, 16:29 »
0
Vaya, creia que DeleteFile llamaba directamente a ZwDeleteFile  :blink:

Tu como desensamblas las APIS a Ring3??? Olly o con el Windbg???

Muchas gracias Eternal ;)

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #3 en: Miércoles 23 de Enero de 2008, 16:32 »
0
Cita de: "Zirrosis"
Vaya, creia que DeleteFile llamaba directamente a ZwDeleteFile  :blink:

No, el punto fundamental esta en que es una funcion nueva solo disponible desde XP en adelante.

Cita de: "Zirrosis"
Tu como desensamblas las APIS a Ring3??? Olly o con el Windbg???

Como trabajo principalmente en modo Kernel el Ollydbg no me serviria asi que uso el WinDbg siempre (ademas es mucho mas potente)  B)

Cita de: "Zirrosis"
Muchas gracias Eternal ;)

De nadas  :comp:

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

Zirrosis

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #4 en: Miércoles 23 de Enero de 2008, 16:41 »
0
Cita de: "Eternal Idol"
Como trabajo principalmente en modo Kernel el Ollydbg no me serviria asi que uso el WinDbg siempre (ademas es mucho mas potente)  B)
Cierto, aunque para Ring3 el olly sirve, es que tengo mucha mas experiencia en el Olly que en el Windbg, y se que es mas potente, pero me cuesta adaptarme xDDD

Por cierto, para desensamblar es: u <api> en el Windbg, no???

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #5 en: Miércoles 23 de Enero de 2008, 17:57 »
0
Cita de: "Zirrosis"
Cierto, aunque para Ring3 el olly sirve, es que tengo mucha mas experiencia en el Olly que en el Windbg, y se que es mas potente, pero me cuesta adaptarme xDDD

Por cierto, para desensamblar es: u <api> en el Windbg, no???
Si, en este caso por ejemplo:

u Kernel32!DeleteFileA

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

Zirrosis

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #6 en: Miércoles 23 de Enero de 2008, 18:28 »
0
Me da lo siguiente :S


lkd> u Kernel32!DeleteFileA
Couldn't resolve error at 'Kernel32!DeleteFileA'

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #7 en: Miércoles 23 de Enero de 2008, 18:39 »
0
Cita de: "Zirrosis"
Me da lo siguiente :S


lkd> u Kernel32!DeleteFileA
Couldn't resolve error at 'Kernel32!DeleteFileA'
Eso pasa por usar lkd ... no tenes que depurar el Kernel para una DLL de modo Usuario ...

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

Zirrosis

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #8 en: Miércoles 23 de Enero de 2008, 18:45 »
0
Entonces donde voy????

PD: Ya te dije que no me adapto muy bien al Windbg todavia :S

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #9 en: Miércoles 23 de Enero de 2008, 18:49 »
0
Cita de: "Zirrosis"
Entonces donde voy????

PD: Ya te dije que no me adapto muy bien al Windbg todavia :S
Por ejemplo abris el WinDbg:

File>>Open Executable y seleccionas cualquier ejecutable, todos cargan Kernel32.dll cosa que el Kernel no hace. Sino podes abrir el mismo Kernel32.dll con File>>Open Crash Dump.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

Zirrosis

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Problema Hookeando Zwdeletefile
« Respuesta #10 en: Miércoles 23 de Enero de 2008, 18:58 »
0
Ahora si....muchas gracias Eternal ;)