OWASP dice:la comprensión de los peligros de sprintf (...)
"funciones de biblioteca C, tales como strcpy (), strcat(), sprintf() y vsprintf () operan en cadenas terminada en nulo y no realiza controles de límites ".
sprintf escribe datos en cadena int sprintf formateados (char * str, const char * formato, ...);
Ejemplo:
sprintf(str, "%s", message); // assume declaration and
// initialization of variables
Si entiendo el comentario de OWASP, a continuación, los peligros del uso de sprintf son que
1) si mensaje 's length>str' s de longitud, hay una desbordamiento del búfer
y
2) si mensaje no nulo terminar con \0
, entonces mensaje podría conseguir copiado en str más allá de la dirección de memoria de mensaje, provocando un desbordamiento de búfer
Por favor confirmar/negar. Gracias
Además, el error del programador como 'sprintf (str, message)' o similar es un riesgo real. – You