Suricata is a network Intrusion Detection System, Intrusion Prevention System and Network Security Monitoring engine. From 8.0.0 until 8.0.6, the DHCP parser in rust/src/dhcp/dhcp.rs creates stateless transactions without recording their packet direction with AppLayerTxData::for_direction(), so a sensor that observes only one direction cannot mark the unseen direction inspected or free completed transactions. The RDP parser in rust/src/rdp/rdp.rs has the same direction-state defect. The per-flow transaction list can grow without bound and cleanup repeatedly scans it, causing increasing CPU and memory consumption and eventual denial of service. This issue is fixed in version 8.0.6.
{
"binaries": [
{
"binary_name": "libhtp-0.5.23-1",
"binary_version": "3.2-2ubuntu3"
},
{
"binary_name": "suricata",
"binary_version": "3.2-2ubuntu3"
},
{
"binary_name": "suricata-hyperscan",
"binary_version": "3.2-2ubuntu3"
},
{
"binary_name": "suricata-oinkmaster",
"binary_version": "3.2-2ubuntu3"
}
]
}