"Smashing the stack for fun and profit"

air-base
Mind Map by air-base, updated more than 1 year ago
air-base
Created by air-base about 6 years ago
11
0

Description

Mapa mental obtenido del árticulo "smashing the stack for fun and profit" de Aleph one. ORRC.

Resource summary

"Smashing the stack for fun and profit"
  1. El código con este objetivo causa "vuelta" de turina para ir en dirección aleatoria
    1. Basura de la pila
      1. Garabatear la pila
        1. Destrozar la píla
          1. Fandango en el núcleo
            1. Pérdida de memoria
              1. Precedence lossage
              2. Organización de memoria
                1. Tenemos procesos, que se dividen en tres...
                  1. Pila
                    1. Tipo de dato abstracto
                      1. Dos funciones importantes: PUSH Y POP
                        1. Ejecutadas por la CPU
                        2. Usada para asignar dinámicamente variables locales
                          1. Bloque contiguo de datos de memoria
                            1. Tamaño ajustado dinámicamente por el kernel durante la ejecución
                              1. Tiene un marco de pila
                                1. Contiene los parámetros de una función
                                  1. Contiene las variables locales de una función
                                    1. Datos necesarios para recuperar el marco de pila anterior
                                    2. Generalmente crece "hacía abajo"
                                    3. Texto
                                      1. Datos
                                    4. Desbordamiento de buffer
                                      1. Buffer: bloque contiguo de memoria en la computadora, contiene instancias del mismo tipo de datos
                                        1. Resultado de relleno de más datos en una memoria de los que puede manejar
                                          1. Se da al copiar datos sin comprobar límites
                                            1. Genera una violación de segmentación
                                          2. Nos permite cambiar la dirección de retorno de una función
                                            1. Cambio en el flujo de ejecución del programa
                                              1. No sabemos el lugar en memoria donde está el programa a explotar
                                                1. Usando funciones JMP y CALL puede evitarse
                                                  1. Se puede utilizar IP direccionamiento relativo
                                              2. Hay varios escenarios para ocasionarse
                                                1. Rellenar la parte delantera del buffer con instrucciones NOP
                                                  1. Aumentar en 100 bytes el tamaño del buffer, en relación a la memoria intermedia
                                                  2. Particularidad en lenguaje C, puede ocasionarse con:
                                                    1. Escribir más allá del final de un array de caracteres, con funciones como
                                                      1. strcat()
                                                        1. strcpy()
                                                          1. sprintf()
                                                            1. vsprintf()
                                                            2. Emparejar una secuencia de caracteres que no son de espacio en blanco
                                                              1. scanf()
                                                              2. Uso de bucle while() para leer un caractér a la vez en un buffer de la entrada estándar hasta alcanzar un delimitador
                                                                1. getc()
                                                                  1. fgetc()
                                                                    1. getchar()
                                                                Show full summary Hide full summary

                                                                Similar

                                                                Unidad 3. La tecnología digital
                                                                VICTOR SABINO HERNANDEZ
                                                                Uso de fórmulas en Excel.
                                                                Xochitl Salas
                                                                Guía de estudio examen final
                                                                José Luis Ocampo
                                                                Evaluación diagnóstica TICs
                                                                VICTOR SABINO HERNANDEZ
                                                                HTML básico
                                                                Pablo Carbajal Sardá
                                                                PROYECTO DE GRADO - INGENIERIA DE SISTEMAS
                                                                edilaguirre
                                                                test de Redes Informáticas
                                                                lesly melina valencia urizar
                                                                Test N°2 - Taller de computación
                                                                Juan Osorio
                                                                Computación Primer Parcial
                                                                Julian Gallardo
                                                                EXAMEN DE COMPRENSIÓN LECTORA
                                                                franquito_l
                                                                Examen "Teclado y Atajos"
                                                                love_peace2