Preguntas con etiqueta 'stack-overflow'

3
respuestas

¿Qué tan grande es una palabra canaria en Linux, típicamente?

Una canary word es una secuencia de bits colocada en el límite entre un búfer (como una pila) y controlar los datos en un programa, como una forma de detectar y reaccionar a los desbordamientos de búferes. ¿Cuántos bits de longitud tienen e...
hecha 23.01.2017 - 00:38
4
respuestas

Si la pila crece hacia abajo, ¿cómo puede un desbordamiento del búfer sobrescribir el contenido sobre la variable?

Me doy cuenta de cómo funciona un desbordamiento de búfer, pero tengo un problema para entender la dirección en la que se dirige el desbordamiento. Así que si la pila crece hacia abajo , eso significa que la dirección de retorno está arriba d...
hecha 03.09.2016 - 10:45
0
respuestas

Uso de la arquitectura del conjunto de instrucciones (ISA) para detener los desbordamientos de pila

He estado aprendiendo sobre el uso de desbordamientos de pila para obtener la ejecución de código arbitrario, uno de los trucos utilizados es sobrescribir la dirección de retorno para hacer que el flujo de control sea como lo desea. Suponiendo q...
hecha 07.05.2017 - 16:47
2
respuestas

¿Por qué un ataque ret2libc debe seguir el orden "system (), exit (), command?

En un ataque ret2libc, entiendo que la dirección de retorno se puede sobrescribir con la dirección del comando del sistema, que toma una cadena de comandos como argumento. En este caso, ¿no debería la dirección de la cadena de comando ir directa...
hecha 12.09.2016 - 23:31
1
respuesta

¿Cómo funciona la pila de guarda del compilador gcc para el desbordamiento de pila?

Cuando compilamos el programa c con gcc, tenemos que incluir la opción "-z execstack" para habilitar el ataque de desbordamiento de pila. La pregunta que quiero hacer es cómo gcc implementa esto. Sin esta opción, ¿cómo guarda gcc la pila? Por fa...
hecha 25.05.2018 - 14:30
1
respuesta

Exploit no funciona fuera de GDB

Ya probé varias soluciones proporcionadas a otras preguntas "exploit no funciona fuera de gdb" (r.sh, invoke.sh, eliminando variables de entorno) y en este punto no tengo idea. por qué el exploit no funciona (behemoth1 en overgewire wargames)....
hecha 04.03.2017 - 16:24
2
respuestas

¿Cómo se aplica la protección de pila en un binario?

En una caja de Linux con una CPU Intel, digamos que compilé por binario con -fstack-protect-all. ¿Cómo se codifica esto en el binario? (¿Puedo ver esta información usando readelf?). ¿Se codifica en cada página / segmento o se agrega al bina...
hecha 03.05.2017 - 00:52
2
respuestas

Direcciones conectadas entre sí y relativas en shellcode

Esta pregunta se encuentra principalmente en el contexto de la ejecución de comandos arbitrarios en un desbordamiento de búfer (por ejemplo, una pila). Recientemente leí en algún lugar que las direcciones cableadas (absolutas) no son buenas...
hecha 18.05.2017 - 11:58
1
respuesta

Aplastando pila en x86_64

Las funciones de explotación como strcpy() se basan en el hecho de que la cadena de carga útil no debe contener cero bytes que terminen la función de copia. Si la carga útil contiene direcciones x86_64 (por ejemplo, para sobrescribir una...
hecha 19.06.2018 - 12:56
2
respuestas

C - Explotación de desbordamiento de búfer simple, ¿cómo se sobrescribe el EIP en diferentes funciones de llamada de tipo?

Antecedentes generales: He escrito un servidor de eco que intenta implementar un ejemplo de BoF en C que utiliza una llamada a la función strcpy () como esta: // .... including the corresponding libraries depending on host environment #incl...
hecha 21.03.2018 - 07:09