mientras lees cómo y qué es un desbordamiento de búfer en la página owasp Vi documentación sobre un desbordamiento de búfer en el LibPNG
Se dijo que el siguiente código es vulnerable:
if (!(png_ptr->mode & PNG_HAVE_PLTE)) {
/* Should be an error, but we can cope with it */
png_warning(png_ptr, "Missing PLTE before tRNS");
}
else if (length > (png_uint_32)png_ptr->num_palette) {
png_warning(png_ptr, "Incorrect tRNS chunk length");
png_crc_finish(png_ptr, length);
return;
}
...
png_crc_read(png_ptr, readbuf, (png_size_t)length);
Tengo problemas para entender por qué es vulnerable.