An issue was discovered in picoTCP 1.7.0. The code for creating an ICMPv6 echo replies doesn't check whether the ICMPv6 echo request packet's size is shorter than 8 bytes. If the size of the incoming ICMPv6 request packet is shorter than this, the operation that calculates the size of the ICMPv6 echo replies has an integer wrap around, leading to memory corruption and, eventually, Denial-of-Service in pico_icmp6_send_echoreply_not_frag in pico_icmp6.c.
Se detectó un problema en picoTCP versión 1.7.0. El código para crear una respuesta de eco ICMPv6 no comprueba si el tamaño del paquete de peticiones eco ICMPv6 es inferior a 8 bytes. Si el tamaño del paquete de petición ICMPv6 entrante es más corto que esto, la operación que calcula el tamaño de las respuestas de eco ICMPv6 presenta un ajuste de enteros, conllevando a una corrupción en la memoria y, finalmente, una Denegación de Servicio en la función pico_icmp6_send_echoreply_not_frag en el archivo pico_icmp6.c