An issue was discovered in Suricata 4.1.3. If the network packet does not have the right length, the parser tries to access a part of a DHCP packet. At this point, the Rust environment runs into a panic in parse_clientid_option in the dhcp/parser.rs file.
The product does not ensure or incorrectly ensures that structured messages or data are well-formed and that certain security properties are met before being read from an upstream component or sent to a downstream component.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Suricata | Suricata-ids | 4.1.3 (including) | 4.1.3 (including) |
Suricata | Ubuntu | bionic | * |
Suricata | Ubuntu | disco | * |
Suricata | Ubuntu | eoan | * |
Suricata | Ubuntu | trusty | * |
Suricata | Ubuntu | upstream | * |
Suricata | Ubuntu | xenial | * |
If a message is malformed, it may cause the message to be incorrectly interpreted. Neutralization is an abstract term for any technique that ensures that input (and output) conforms with expectations and is “safe.” This can be done by:
This weakness typically applies in cases where the product prepares a control message that another process must act on, such as a command or query, and malicious input that was intended as data, can enter the control plane instead. However, this weakness also applies to more general cases where there are not always control implications.