Sitio personal de Ariel M. Liguori De Gottig

Wednesday, November 26

Shellcoders - WTF ¿?

Seguramente muchos conozcan el término, pero realmente que es un Shellcode.
Wikipedia, como siempre tiene una respuesta, y es básicamente correcta. Un Shellcode es una seria _pequeña_ de instrucciones codificadas al mayoría de las veces íntegramente en código ASM que buscan la ejecución de shell mediante, por ej., el resultado de un buffer overflow (hablaremos de esto luego, lo debo aún).
Esto que aquí se enuncia puede parecer muy sencillo y básico y es por ello que resulta tan peligroso y explorado por tantos usuarios.
¿Para que nos sirve un Shellcode? o ¿Para que armaríamos uno?

Difícilmente querremos realizar esta labor para ejecutar un simple "/bin/sh" sino que gracias a la posibilidad de explotar diferentes recursos de la PC con estos códigos querremos hacer _algo_más_ que solo nosotros sabremos que es (y que puede ser lo que se nos de la gana ;) ). En este punto es donde el riesgo entra en juego, se pueden realizar códigos que utilicen las vulnerabilidades de diversos sistemas/aplicaciones para producir un buffer overflow (p. ej) y ejecutar de este modo código arbitrario. Eso es malo y es peor aún lo sencillo que es aprender a dominar este conocimiento con práctica.

Para que se vayan entrenando:
Shellcode.org
Y lo que lo trajo a mi memoria acá.

0 comentarios: