From 2828e292bbfb7dd0804663c572f9c88959ba86b1 Mon Sep 17 00:00:00 2001 From: Philippe Antoine Date: Fri, 18 Dec 2020 14:21:16 +0100 Subject: [PATCH] icmpv6: bail out for icmpv6.hdr keyword if not ICMPv6 (cherry picked from commit ddb4d289ae00908d8f25fdd3afbcd5a1da2111a6) --- src/detect-icmpv6hdr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/detect-icmpv6hdr.c b/src/detect-icmpv6hdr.c index f892f5921b..7de83dc5f1 100644 --- a/src/detect-icmpv6hdr.c +++ b/src/detect-icmpv6hdr.c @@ -105,7 +105,10 @@ static InspectionBuffer *GetData(DetectEngineThreadCtx *det_ctx, InspectionBuffer *buffer = InspectionBufferGet(det_ctx, list_id); if (buffer->inspect == NULL) { uint32_t hlen = ICMPV6_HEADER_LEN; - DEBUG_VALIDATE_BUG_ON(p->icmpv6h == NULL); + if (p->icmpv6h == NULL) { + // DETECT_PROTO_IPV6 does not prefilter + return NULL; + } if (((uint8_t *)p->icmpv6h + (ptrdiff_t)hlen) > ((uint8_t *)GET_PKT_DATA(p) + (ptrdiff_t)GET_PKT_LEN(p))) {