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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  PEB y funciones de kernel32
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: PEB y funciones de kernel32  (Leído 4,142 veces)
Vaagish


Desconectado Desconectado

Mensajes: 875



Ver Perfil
PEB y funciones de kernel32
« en: 8 Agosto 2013, 02:39 am »

Hola amigos!! Alguien podria ayudarme a entender bien como funciona el tema de encontrar funciones en kernel32 y utilizarlas? Hace 3 dias que le dedico 8hs diarias y no he podido encontrar las funciones!! Es muy estresante jaja
Lei todos los post que hablan del PEB del foro y muchos otros mas! Pero a mi humilde entender, casi todos llegan hasta la parte de encontrar la direccion de kernel32,, eso lo entendi.. pero no logro una vez ahi parado (en la direccion de memoria de kernel32) seguir buscando dentro las funciones, y mucho menos ejecutarlas!!

Como recorro el modulo kernel32??? Muchas gracias!!

PD: Algo de la info que rescate, la que entendi mejor ->

http://el-blog-de-thor.blogspot.com/2011/05/obtener-la-direccion-base-de.html
Ahi estan muy bien detalladas las estructuras que vamos recorriendo

http://el-blog-de-thor.blogspot.com/2011/05/usando-getprocaddress-y-loadlibrary_07.html
Ahi esta explicado como recorrer y buscar la funcion GetProcAddress (Pero creo que utiliza otro metodo, porque recurre a la cabezera del PE y no entiendo para que) :/

http://www.projectshellcode.com/node/22
Ahi hay una shellcode pero entiendo nada

EDITADO: Bien,, desde que escribi la consulta hasta recien, conoci una herramienta que se llama dumpbin! Excelente! Pero igual preciso ayuda jaja


« Última modificación: 8 Agosto 2013, 02:54 am por Vaagish » En línea

orlando9427

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: PEB y funciones de kernel32
« Respuesta #1 en: 8 Agosto 2013, 03:06 am »

Al obtener la dirección del módulo kernel32 puedes usar su cabecera PE para acceder a la Export Table y con eso puedes listar las funciones y sus punteros. Leete la MSDN o el texto de The Swash para entender la mecánica de la cabecera PE

Saludos!


En línea

Vaagish


Desconectado Desconectado

Mensajes: 875



Ver Perfil
Re: PEB y funciones de kernel32
« Respuesta #2 en: 8 Agosto 2013, 06:49 am »

Gracias por responder! O sea que el modulo kernel32 tiene cabezera PE? Como los exe? Seguro que no es lo mismo,, pero es con lo unico que lo puedo asociar,,, tenes algun enlace que explique bien eso ?
Yo he buscado en el foro bastante y en otros lados, pero no logro captar como funciona..

Otro texto interesante es:
http://foro.elhacker.net/buscador2-t320584.0.html;msg1585396#msg1585396 de lShadowl

El texto de The Swash que comentas es este?
http://foro.elhacker.net/buscador2-t327025.0.html;msg1612552#msg1612552
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: PEB y funciones de kernel32
« Respuesta #3 en: 8 Agosto 2013, 12:45 pm »

Los ejecutables de Windows (gama NT) son PE, sean programas, modulos o incluso drivers (modulos de modo Kernel). Primero viene el MZ igual por razones de compatibilidad hacia atras.

http://en.wikipedia.org/wiki/DOS_MZ_executable
http://en.wikipedia.org/wiki/Portable_executable

Una vez que encontraste la direccion base de Kernel32 ya podes definir un puntero a IMAGE_DOS_HEADER con la misma, con el campo e_lfanew de la misma obtendras la cabecera PE (IMAGE_NT_HEADERS).

Mas aca: http://msdn.microsoft.com/en-us/magazine/cc301805.aspx

Con eso ya podes seguir solo.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
orlando9427

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: PEB y funciones de kernel32
« Respuesta #4 en: 8 Agosto 2013, 19:08 pm »

Como bien dice Eternal Idol todos los ejecutables de Windows tienen formato PE lo que cambia es el subsystem, principalmente, también la forma en que el EntryPoint es llamado y una que otra cosa.

Este documento, el que te comentaba hecho por The Swash, te servirá para entender mejor el formato PE, los directorios y RVAs.
http://foro.elhacker.net/empty-t332157.0.html

Como consejo al tener ya el módulo Kernel32 en memoria y mapeado no necesitas de conversiones de RVA a Offsets.

Saludos!
En línea

Vaagish


Desconectado Desconectado

Mensajes: 875



Ver Perfil
Re: PEB y funciones de kernel32
« Respuesta #5 en: 8 Agosto 2013, 19:22 pm »

Pero mas que muchisimas gracias!! Ese empujoncito precisaba jejeje
Ahora me pongo con la lectura ;)

EDITADO: Y gracias a The Swash que no termine de leer el texto y ya se nota que esta muy bueno!
« Última modificación: 8 Agosto 2013, 19:34 pm por Vaagish » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema KERNEL32.dll de MakeCriticalSectionGlobal
Juegos y Consolas
Lainuxxx 0 3,286 Último mensaje 29 Julio 2004, 10:23 am
por Lainuxxx
duda con getprocadress y kernel32.
Programación C/C++
black_flowers 3 2,394 Último mensaje 4 Febrero 2011, 12:51 pm
por black_flowers
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines