Que es un RunPE?

Iniciado por x64core, 29 Septiembre 2011, 18:01 PM

0 Miembros y 1 Visitante están viendo este tema.

x64core

buenas tengo esa duda :P pensaria que se encuentra facil en google pero busque por una hora y no encontre nada :S es mas encontre codigos y todo eso pero exactamente quiero saber caracteristicas detalles osea lo principal que es lo que hace :P gracias
espero no haberme equivocado en la sección siempre e visto el tema creo que es de malware no :P

el-brujo

#1
Tu pregunta es más de Ingeniería Inversa, pero en Malware también vale.

Los dos moderadores Karcrack y    [Zero] les gusta el tema xD

Abril Negro 2008: Taller de Formato PE by Ferchu
http://foro.elhacker.net/analisis_y_diseno_de_malware/abril_negro_2008_taller_de_formato_pe_by_ferchu-t208278.15.html

[Documento]Formato PE bajo Windows - Español
http://foro.elhacker.net/windows/documentoformato_pe_bajo_windows_espanol-t332157.0.html

Qué es CFF Explorer?
http://foro.elhacker.net/ingenieria_inversa/que_es_cff_explorer-t335659.0.html

[Taller] Así funcionan los crypters: cifrando malware a mano  
http://foro.elhacker.net/analisis_y_diseno_de_malware/taller_asi_funcionan_los_crypters_cifrando_malware_a_mano-t262806.0.html

[Taller] Introduccion al Diseño de Rutinas de Encriptacion
http://foro.elhacker.net/analisis_y_diseno_de_malware/taller_introduccion_al_diseno_de_rutinas_de_encriptacion-t273035.0.html

Modificando cabeceras "for Fun and Profit"
¿Que es el formato PE?
http://foro.elhacker.net/hacking_avanzado/modificando_cabeceras_for_fun_and_profit-t181258.0.html

Para más adelante:

Abril Negro 2008: Taller de ASM
http://foro.elhacker.net/analisis_y_diseno_de_malware/abril_negro_2008_taller_de_asm-t208188.0.html

Ejecución de Archivos desde Memoria [Base Relocation]
http://foro.elhacker.net/analisis_y_diseno_de_malware/ejecucion_de_archivos_desde_memoria_base_relocation-t264564.0.html

[Taller] Api Hooking en modo usuario
http://foro.elhacker.net/analisis_y_diseno_de_malware/taller_api_hooking_en_modo_usuario-t262962.0.html

skapunky

#2
No es que sea de malware, pero va relacionado por su úso, aquí te dejo un documento impresionante sobre RunPe, lo recomiendo a todo el mundo ya que se explica todo.



Descargar ebook "Formato Portable executable bajo windows"
Killtrojan Syslog v1.44: ENTRAR

el-brujo

me has leído el pensamiento xDD

He puesto ese mini libro en el segundo enlace:

[Documento]Formato PE bajo Windows - Español
http://foro.elhacker.net/windows/documentoformato_pe_bajo_windows_espanol-t332157.0.html

Lo publicaron en el foro de Windows y ni lo ví xD

Lo he añadido a la web y su descarga sin esperas:

http://ns2.elhacker.net/timofonica/manus/Formato_de_ficheros%20ejecutables%20_Formato%20PE_.pdf

x64core


The Swash

Buena tarde,
Con respecto a las respuestas, todas están erradas, pero vamos no del todo y no es por desmeritarles. En realidad el RunPE obviamente tiene estrecha relación con el Formato PE, pero no es exactamente eso.
El famoso RunPE es una técnica la cual permite ejecutar archivos ("on the fly" - Karcrack), es decir sin necesidad de que el archivo ocupe tamaño físico, esto se hace porque el archivo está plasmado en un buffer en memoria. Esta técnica es usada en malware generalmente en Cifradores, los cuales tienen en su cuerpo el archivo cifrado, luego en memoria lo descifran y lo ejecutan, y esto no llamará mucho la atención.

Como funciona un RunPE:

  • Comprobar que es un ejecutable válido (MZ & PE/x0/x0 Signature).
  • Crear un nuevo proceso suspendido (Generalmente con el mismo ejecutable).
  • Desasignar la proyección del archivo en ese proceso, ImageBase. (Limpiar el ejecutable del proceso).
  • Obtener contextos (Registros).
  • Reservar en memoria la dirección del ImageBase del ejecutable con un tamaño del campo SizeOfImage. (ImageBase y SizeOfImage del archivo a ejecutar).
  • Escribir la cabecera y las secciones alineadas por el campo SectionAlignment.
  • Editar EAX en los registros leídos por la dirección del punto de entrada del archivo a ejecutar.
  • Editar EBX + 8 por el ImageBase del ejecutable a cargar (Cambiar base de la imagen del nuevo proceso).
  • Editar con el nuevo contexto (Escribir registros).
  • Iniciar el proceso suspendido.

Un saludo.

x64core

:o interesante
sera que es posible cargar solamente trozos de codigos desifrados para que los AVs no los detecten tan facil? y si fuera asi pero en vb no se puede verdad :P solo en c++
y asm ? :P
aunq noce pero e visto varios codigos en vb :P

kisk

#7
Cita de: Raul100 en 30 Septiembre 2011, 06:01 AM
:o interesante
sera que es posible cargar solamente trozos de codigos desifrados para que los AVs no los detecten tan facil? y si fuera asi pero en vb no se puede verdad :P solo en c++
y asm ? :P
aunq noce pero e visto varios codigos en vb :P
Claro que es posible y en vb si se puede verda karcrack ?pero es mucho mas lio es mejor hacerlo en asm o c++ a esta tecnica se le llama inyeccion de codigo en memoria algo complejo para empezar por ahi dejame decirte
Mahazar dejo unos tutos espectaculares si lo encuentro te los subo
Saludos
La vieja escuela me da nostalgia la nueva me da naucias dime cual es la escuela si ambas me deprimen (8)

x64core

Cita de: kisk en 30 Septiembre 2011, 06:18 AM
Claro que es posible y en vb si se puede verda karcrack ?pero es mucho mas lio es mejor hacerlo en asm o c++ a esta tecnica se le llama inyeccion de codigo en memoria algo complejo para empezar por ahi dejame decirte
Mahazar dejo unos tutos espectaculares si lo encuentro te los subo
Saludos


ok se te agradeceria tio ;D ya veo que es muy buena tecnica esta  >:D

kisk

A claro que es muy buena el Poison Ivy usa esta tecnica y mira uno de los mejores rats que existe
Saludos
La vieja escuela me da nostalgia la nueva me da naucias dime cual es la escuela si ambas me deprimen (8)