de mis textos extraidos
Este programa tiene una funcion con un tipico error de codigo de bufferoverflow. La funcion copia una cadena suministrada sin chequear ellimite usando strcpy() en vez de strncpy(). Si tu ejecutas esteprograma llegaras a una violacion de segmento. Veamos como sexo con viejas, fotos mamadas gay, chicos gays desnudos, hombres desnudos gratis, galeria tetas putas, video sexo oral, queda la pila cuando llamamos a la funcion: parte baja parte alta topof de memoria de memoria buffer sfp ret *str <------ [ ][ ][ ][ ]parte alta parte baja de pila de pila bajar sexo gays, tios buenos, tios musculosos gay, fotos de tios buenos desnudos,copiando el contenido de *str (cadena_maslarga[]) a buffer[] hasta queun caracter nulo es encontrado en la cadena. Como puedes ver buffer[]es videos mamadas, fotos de culos calientes, sexo con abuelas, galerias amateur, mujeres calientes, tetas chicas guapas,mucho mas reducido que *str. buffer[] ocupa 16 bytes, e intentamosllenarlo con 256 bytes. Esto significa que todos los 250 bytes culos de chicos gay, fotos sexo gordas,despues del buffer en la pila estan siendo sobreescritos. Esto incluyeSFP, RET e incluso *str. Habiamos llenado large_string con las letras'A'. Esta letra en hexadecimal es 0x41. Eso significa que la direccionde retorno (return address) es ahora 0x41414141. Esto esta fuera delproceso "address space". Eso es porque cuando la funcion vuelve eintenta leer la siguiente instruccion de esa videos de folladas gay, gays follando, peliculas gay, videos de sexo anal gratis, culos jovencitas, culos zorras putas,direccion se obtiene una violacion de segmento. Asi que un bufferoverflow nos permite cambiar la direccion de retorno (return address)de una funcion. Vamos a nuestro primer ejemplo y veamos de nuevo comose disponia la pila: parte baja parte alta de memoria de memoriabuffer2 buffer1 sfp ret a b c <------ [ ][ ][ ][ ][ ][ ][ ] partealta parte baja de la pila de la pila Intentemos modificar nuestroprimer ejemplo para que sobreescriba la direccion de retorno (returnaddress), y demostrar como podemos hacer para foro sexo, videos de sexo anal, galeria de videos, videos gratis sexo,ejecutar codigo arbitrario. Antes de buffer1[] en la pila esta SFP, yantes de esto, la direccion de retorno (return address). Eso es 4 bytesdespues del final de buffer1[]. Pero recuerda que buffer1[] son 2 wordasi que tiene una longitud de 8 bytes. Asi que la direccion deretorno video mamadas, lesbianas desnudas, videos zorras lesbianas, videos sexo maduras, galerias lesbianas sexo, (return address) esta a 12 bytes desde el principio de buffer1[]. Modificaremos el valor de retorno en tal modo que la fotos chicas cachondas, fotos mujeres follando, jovencitas porno!