From 579dd7dff9bcb973ab83d7b222d5250de5028794 Mon Sep 17 00:00:00 2001 From: Philippe Antoine Date: Fri, 31 Jan 2020 15:09:32 +0100 Subject: Fix memcached read overflow --- src/lib/protocols/memcached.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/lib/protocols/memcached.c') diff --git a/src/lib/protocols/memcached.c b/src/lib/protocols/memcached.c index 664fd195b..ef846c9e2 100644 --- a/src/lib/protocols/memcached.c +++ b/src/lib/protocols/memcached.c @@ -105,7 +105,7 @@ void ndpi_search_memcached( { struct ndpi_packet_struct *packet = &flow->packet; const u_int8_t *offset = packet->payload; - const u_int16_t length = packet->payload_packet_len; + u_int16_t length = packet->payload_packet_len; u_int8_t *matches; NDPI_LOG_DBG(ndpi_struct, "search memcached\n"); @@ -131,6 +131,7 @@ void ndpi_search_memcached( } offset += MEMCACHED_UDP_HDR_LEN; + length -= MEMCACHED_UDP_HDR_LEN; matches = &flow->l4.udp.memcached_matches; } else { -- cgit v1.2.3