[Enciclopedia Online Gratuita] Diccionario de Internet y Tecnologías de la Información y la Comunicación (TIC):
ıllı Format String Attack : que es, definición y significado, descargar videos y fotos.
La información contenida en esta web debe ser considerada como información general, de carácter formativo, educativo o divulgativo, y no puede ser utilizada o interpretada como consejo o diagnótico médico, psicológico o de ningún otro tipo. Es posible que algunos datos mostrados no esten actualizados. Por ello, en caso de duda lo recomentable es consultar a un experto cualificado.
- Detalles
- Categoría: INTERNET
ıllı Format String Attack : que es, definición y significado, descargar videos y fotos.
Para comprender el ataque, es preciso entender los componentes que lo constituyen: El ataque podría ejecutarse cuando la aplicación no valide apropiadamente la entrada mandada. En un caso así, si un factor de cadena, como por ciento x, se introduce en los datos publicados, la cadena es analizada por la función pertinente al formato y se ejecuta la conversión detallada en los factores. No obstante, se aguardan más razonamientos como entrada, y si estos razonamientos no se dan, la función podría leer o bien redactar en la pila. De esta forma, es posible acotar una entrada bien desarrollada que podría mudar el comportamiento del formato de la función de la aplicación, dejando de esta manera al atacante ocasionar una denegación de servicio (DNS) o bien provocar la ejecutar comandos arbitrarios. Si la aplicación emplea funciones de formato en el código fuente, que es el responsable de interpretar los caracteres de formato. El atacante podría explorar la vulnerabilidad introduciendo caracteres de formato en el sitio. Por servirnos de un ejemplo, si la función printf se emplea para imprimir el nombre de usuario insertado en ciertos campos de la página, el sitio podría ser frágil a este género de ataque. Como mostramos a continuación: Hay una serie de funciones de formato definidas en el ANSI C, ciertas empleadas para cubrir necesidades básicas y otras más complejas basadas en estas primeras, que aunque no entran en el estándar, si están libres para su empleo. Funciones básicas: A continuación se muestran ciertos ejemplos de funciones de formato, que si no se trata la información con la seguridad debida, pueden exponer a la aplicación a un Format String Attack, o bien a lo que es exactamente lo mismo, a un Ataque de Cadena de Formato. Funciones de Formato A continuación se presentan ciertos factores de formato que se pueden emplear y las consecuencias que tienen: Para descubrir si la aplicación es frágil a esta clase de ataque, es preciso contrastar si la función formato admite y examina los factores de la cadena de formato mostrados en la próxima tabla: Parámetros comunes usados en un ataque de cadena de formato El comportamiento de la función de formato es controlado por format string. Recobrando los factores pedidos desde la pila de la próxima manera: En el lateral podemos ver el aspecto que tendría nuestra pila de instrucciones. A continuación describiremos cada una de las variables usadas: La función de formato parseará la cadena A, leyendo carácter a carácter y copiándolo en la salida al tiempo que este no sea ’ por ciento ’. En el instante en el que halla el carácter después de ’ por ciento ’, detallará el género de factor a valorar. La cadena ’ por ciento por ciento ’ se comporta en especial, y deja imprimir al salir el carácter ’ por ciento ’. Los otros factores se relacionan con el resto de datos alojados en la pila. La vulnerabilidad viene por el mal empleo que se la da a la función printf. Cuando la empleamos como: En sitio de: Aunque el resultado devuelto es exactamente el mismo y marcha apropiadamente, lo más atinado sería la segunda opción. La omisión del factor de formateado deriva en una vulnerabilidad que podría ser aprovechado por un atacante para provocar la ejecución de código malicioso. Si deseamos prevenir este género de ataques es recomendable tener en consideración las próximas medidas:printf ("La data de nacimiento es: por ciento d \n", mil novecientos setenta y cuatro);
printf (nameUser);
printf (" Número por ciento d sin dirección , Número por ciento d con dirección : por ciento 08x\n", i , a, &a );
printf(cadena);
printf(" por ciento s", cadena);