/* Variable definitions ==================== */ /* Use this with templates/template-twocol.html */ -->

Chat-Kasper MH

Pasando el codigo a un string

Posted by kasp3r11 12:41, under |

La forma de utilizarlo es la sencilla. La estructura del programa en C con el
codigo de la scode tiene que tener un estilo de este tipo:

<-- codigo -->
#include ..tal..
#include <scodes.h>
void shellcode()
 {
 __asm__("
  codigo de la shellcode
  .byte 0x00
  ");
 }
main()
 {
 printsc((int)shellcode);
 }
<-- fin codigo --> 

La funcion printsc() esta declarada en el fichero scodes.h que se incluye al
final de este articulo (apartado recopilacion). La forma de llamar a dicha
funcion es la siguiente:

  printsc((int)dire_funcion_scode);

Resumiendo, se mete el codigo de la shellcode en una funcion que solo
contenga un __asm__() con el code terminado de un null (.byte 0x00). Esto
ultimo es importante ya que sino lo ponemos la scode sera mas larga de lo que
deberia (se pasara al string el codigo del __asm__ y lo que haya a
continuacion), por lo tanto hay que poner el .byte 0x00 para diferenciar cual
es el final de nuestro codigo. El file scodes.h se copia a /usr/includes y se
incluye en nuestro prog con #include <scodes.h>.
La scode se muestra por pantalla ordenada y esop, luego solo es cuestion de
cut & paste ;).