Description
An issue was discovered in Suricata 4.1.4. By sending multiple IPv4 packets that have invalid IPv4Options, the function IPV4OptValidateTimestamp in decode-ipv4.c tries to access a memory region that is not allocated. There is a check for o->len < 5 (corresponding to 2 bytes of header and 3 bytes of data). Then, "flag = *(o->data + 3)" places one beyond the 3 bytes, because the code should have been "flag = *(o->data + 1)" instead.
References (3)
Core 3
Core References
Third Party Advisory x_refsource_misc
https://lists.openinfosecfoundation.org/pipermail/oisf-announce/
Release Notes, Vendor Advisory x_refsource_misc
https://suricata-ids.org/2019/09/24/suricata-4-1-5-released/
Various Sources x_refsource_misc
https://www.code-intelligence.com/cve-2019-16411
Scores
CVSS v3
9.8
EPSS
0.0062
EPSS Percentile
70.1%
Attack Vector
NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Details
CWE
CWE-125
Status
published
Products (1)
suricata-ids/suricata
4.1.4
Published
Sep 24, 2019
Tracked Since
Feb 18, 2026