inyectando código malicioso en un archivo exe existente: ¿qué sucede realmente?

4

Con metasploit, podemos hacer cosas como inyectar una puerta trasera a un archivo exe. Por ejemplo, se utiliza msfvenom (aquí hay un enlace de referencia enlace ). ¿Podría decirme qué sucede realmente detrás de la escena cuando inyectamos código de shell en un archivo exe?

Para mí, inyectar puerta trasera a un archivo exe es como inyectar código a un proceso existente; y como sé, la inyección de dll y la función de conexión en línea pueden hacer esto. Sin embargo, tenemos que hacer inyección de DLL y enganche de función en línea en Windows. Aquí, metasploit y msfvenom podrían ejecutarse en linux. Por favor, ayúdame a corregir mi entendimiento si hay algo mal.

    
pregunta user3404735 06.03.2017 - 04:45
fuente

1 respuesta

2

Cuando ejecutas un ejecutable, básicamente estás haciendo que tu computadora lea y ejecute algunas secciones específicas del archivo. Sobre simplificación:

Imagina que estás leyendo un documento. Primero abre el documento y su lector le mostrará los contenidos del archivo. Puede hacer esto porque la sección anterior del archivo, o su encabezado, le dice qué es el archivo y qué hacer con él y también qué secciones están llenas de datos válidos .

Algo similar sucede cuando ejecutas un ejecutable. Su computadora lee el archivo y entiende qué sección del archivo debe ejecutar para mostrarle algunos resultados en la pantalla. Cuando msfvenom backdoors es un ejecutable, identifica qué secciones del archivo compilado están marcadas con datos ejecutables y procede a reemplazar o agregar su propia carga útil (como un script de shell inverso o lo que quieras) en este lugar. Cuando se lo envía a su víctima y ellos ejecutan el archivo, sus sistemas terminan ejecutando la carga malvada, ya que cree que es legítimo. Aunque a veces esto es contraproducente, ya que msfvenom no tiene manera de ver exactamente qué reemplaza, a veces reemplaza partes cruciales como la GUI y eso hace que el ejecutable parezca roto en la ejecución.

Usted también podría hacer esto. Simplemente reemplace la función principal de un programa con su carga útil y la ejecutará como lo haría la aplicación normal.

    
respondido por el thel3l 06.03.2017 - 04:57
fuente

Lea otras preguntas en las etiquetas