elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema con Memset
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con Memset  (Leído 4,274 veces)
Blackhawk222

Desconectado Desconectado

Mensajes: 23



Ver Perfil
Problema con Memset
« en: 15 Enero 2011, 07:57 am »

Hola a todos estoy creando un exploit para aprender el uso de los buffer overflow y me encontre con un problema sobre la programacion del mismo.
Resulta que tengo una variable llenarla de el caracter \x91, mas exacto poner 76 veces ese caracter.
Lo que hago es lo siguiente...

INICIO DE CODIGO
Código:
char nops[76];
memset(nops,'\x90',76);

El problema es que agrega al final de la variable tres caracteres mas que necesito que no esten, estos son los caracteres ↑♥>

Alguna idea sobre la solucion?

Gracias...


En línea

Blackhawk222

Desconectado Desconectado

Mensajes: 23



Ver Perfil
Re: Problema con Memset
« Respuesta #1 en: 15 Enero 2011, 08:21 am »

Ja Ja Ja  :laugh:
El problema ya lo encontre resulta que me olvide que las variables en c++ se miden por bytes la cosa era poner
Código:
char nops[228];
antes de
Código:
char nops[76];

Ahora funciona bien...


En línea

Garfield07


Desconectado Desconectado

Mensajes: 1.121


¡Este año voy a por todas! JMJ 2011


Ver Perfil WWW
Re: Problema con Memset
« Respuesta #2 en: 15 Enero 2011, 13:26 pm »

¿? Por que 228? No tiene ningun sentido... :P
Mira asi, porque no le veo sentido... A ver que usas para ver los nops...  :¬¬
Código
  1. #include <string.h>
  2.  
  3. int main ()
  4. {
  5. char nops [76];
  6. memset (nops, '\x90', 76);
  7. puts (nops);
  8. }
  9.  

Tu declaras dos veces nops, eso daria error, no se entiende nada....
¿Que funcion usas para imprimir?
En línea



* Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente.
* No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado.
* Si compila esta bien, si arranca es perfecto.

¡Wiki elhacker.net!
Un saludo
Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.937


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Problema con Memset
« Respuesta #3 en: 16 Enero 2011, 21:05 pm »

Mejor usa sizeof en lugar del tamaño.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Garfield07


Desconectado Desconectado

Mensajes: 1.121


¡Este año voy a por todas! JMJ 2011


Ver Perfil WWW
Re: Problema con Memset
« Respuesta #4 en: 17 Enero 2011, 10:40 am »

Cierto sera siempre mas correcto, pero yo prefiriria usar cuantas menos llamadas a otras funciones mejor no? En este caso no importa, pero en otras cosas si podria cambiar :P
Aun asi sigo con la duda...
Código:
char nops[228];
antes de 
Código:
char nops[76];

Ahora funciona bien...
Pues no deberia...
En línea



* Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente.
* No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado.
* Si compila esta bien, si arranca es perfecto.

¡Wiki elhacker.net!
Un saludo
Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.937


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Problema con Memset
« Respuesta #5 en: 17 Enero 2011, 11:06 am »

sizeof es un operador y (practicamente siempre) se resuelve en tiempo de compilacion.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Garfield07


Desconectado Desconectado

Mensajes: 1.121


¡Este año voy a por todas! JMJ 2011


Ver Perfil WWW
Re: Problema con Memset
« Respuesta #6 en: 17 Enero 2011, 11:20 am »

Ahh oks pues entonces habra que cambiar la practica :P pero como he dicho antes en este caso no importa...
Y ahora como es mi duda?
En línea



* Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente.
* No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado.
* Si compila esta bien, si arranca es perfecto.

¡Wiki elhacker.net!
Un saludo
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema BlueZScanner y problema de conexión
Hacking Mobile
Kasswed 3 6,312 Último mensaje 6 Mayo 2006, 22:04 pm
por Gospel
Duda en función memset
Programación C/C++
Shon 1 3,067 Último mensaje 21 Septiembre 2010, 03:56 am
por cbug
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines