¿Qué es una vulnerabilidad de cadena de formato?

Para entender lo que una vulnerabilidad de cadena de formato, es decir, primero tiene que saber qué es una cadena de formato. Una cadena de formato es una forma de decir que el compilador de C cómo debe al formato de los números que les imprime.

Formato de cadenas en C

En el lenguaje de programación C hay una serie de funciones que aceptan un formato de cadena como argumento. Estas funciones incluyen fprintf, printf, sprintf, snprintf, vfprintf, vprintf, vsprintf, vsnprintf, setproctitle, syslog, y otros.

El más común de ellas es printf. El uso de printf es:

printf formato [argumentos ...]

printf el valor de los productos [argumentos ...] en el formato especificado por el formato.

Un ejemplo de llamada a printf es el siguiente:

printf ( "El código de área es:% d \ n", 303);

Especificadores de formato varían de un compilador de C para la siguiente. El formato especificadores soportadas bajo FreeBSD son:

% d Convertir entero a cadena firmado decimales.
% u Convertir entero a cadena decimal sin firmar.
% i Convertir entero a cadena decimal firmado, el entero puede ser en decimal, en octal (con un 0) o en hexadecimal (0x con una de las principales).
% o Convertir entero a unsigned octal cadena.
o% x% X Convertir entero a cadena hexadecimal sin firmar, con dígitos 0123456789abcdef `` x''para''y `` 0123456789ABCDEF para X).
% c Convertir entero a los caracteres Unicode que representa.
% s Ninguna conversión, sólo insertar la cadena.
% f Convertir número de coma flotante a decimal firmado cadena de la forma xx.yyy, donde el número de y es determinada por la precisión (por defecto: 6). Si la precisión es 0, entonces no es el punto decimal de salida.
e% o% E Convertir número de coma flotante a notación científica en forma x.yyye +-zz, donde el número de y es determinada por la precisión (por defecto: 6). Si la precisión es 0, entonces no es el punto decimal de salida. Si el formulario E se utiliza entonces E se ha impreso en lugar de e.
% go% G Si el exponente es menor que -4 o mayor o igual a la precisión, a continuación, convertir el número de coma flotante como para e%% o E. Otra cosa que para convertir% f. Trailing ceros y un punto decimal rezagados se omiten.
%% Ninguna conversión: basta con insertar%.

Para más información acerca de especificadores de formato, consulte la página de manual de "formato" de su más cercano sistema Unix.

Cadena de formato vulnerabilidad ataques

Vulnerabilidad de cadena de formato ataques se dividen en tres categorías: la denegación de servicio, la lectura y la escritura.

Otras fuentes de información sobre vulnerabilidades Cadena de formato

Para obtener más información sobre la explotación de vulnerabilidades de cadena de formato, consulte la Cadena de formato Explotación de Vulnerabilidades por SCUT, y Cadena de formato ataques por Tim Newsham.

Escrito Secure Code Edificio Segura de Software Codificación segura Programación Segura Cookbook
Aprenda a prevenir la cadena de formato vulnerabilidades en su código fuente con estos excelentes libros sobre programación segura en Amazon.com


Comienzo de la página 5 Libre Herramientas de Red

La vulnerabilidad de Gestión for Dummies

Nuestros amigos en Qualys están ofreciendo copias gratuitas de la versión electrónica de la vulnerabilidad de Gestión for Dummies a Tech-FAQ lectores.

La vulnerabilidad de Gestión for Dummies:

  • Explica la necesidad crítica de gestión de vulnerabilidades
  • Detalles de los elementos esenciales de mejores prácticas pasos de éxito de un programa de gestión de la vulnerabilidad
  • Se esbozan las diversas soluciones de gestión de la vulnerabilidad - incluidas las ventajas y desventajas de cada
  • Destaca la galardonada solución de gestión de la vulnerabilidad QualysGuard
  • Proporciona una lista de diez puntos para eliminar las vulnerabilidades de sus recursos
Guardar ¿Qué es una vulnerabilidad de cadena de formato?

Latest Blog Posts


Inglés Inglés Alemán Alemán Español Español Francés Francés Italiano Italiano Portugués Portugués Ruso Ruso Neerlandés Neerlandés
Griego Griego Hindi Hindi Japonés Japonés Coreano Coreano Chino Chino Chino (simplificado) Chino (simplificado) Árabe Árabe

Derecho de Autor 2009 Tech-FAQ. Todos los derechos reservados. Política de Privacidad.