Bug 2035809 (CVE-2021-45098)

Summary: CVE-2021-45098 suricata: bypass of payload detection on TCP RST with options of MD5header
Product: [Other] Security Response Reporter: Guilherme de Almeida Suckevicz <gsuckevi>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED UPSTREAM QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: ish, jmlich83, jtfas90, sgrubb
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-12-27 19:47:06 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2035810, 2035811    
Bug Blocks:    

Description Guilherme de Almeida Suckevicz 2021-12-27 18:44:59 UTC
An issue was discovered in Suricata before 6.0.4. It is possible to bypass/evade any HTTP-based signature by faking an RST TCP packet with random TCP options of the md5header from the client side. After the three-way handshake, it's possible to inject an RST ACK with a random TCP md5header option. Then, the client can send an HTTP GET request with a forbidden URL. The server will ignore the RST ACK and send the response HTTP packet for the client's request. These packets will not trigger a Suricata reject action.

Reference:
https://redmine.openinfosecfoundation.org/issues/4710

Upstream patch:
https://github.com/OISF/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df

Comment 1 Guilherme de Almeida Suckevicz 2021-12-27 18:45:15 UTC
Created suricata tracking bugs for this issue:

Affects: epel-all [bug 2035811]
Affects: fedora-all [bug 2035810]

Comment 2 Product Security DevOps Team 2021-12-27 19:47:04 UTC
This CVE Bugzilla entry is for community support informational purposes only as it does not affect a package in a commercially supported Red Hat product. Refer to the dependent bugs for status of those individual community products.