Security advisory
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.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2021-45098
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 12:37 UTC · Revision 1
Source evidence
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.
osv:CVE-2021-45098
Complete source record
{
"id": "f50cbbbca4b6ee7a7e3fff2362ca81b62f6b31381b7eba6a455d2e6bdbc7e087",
"url": "https://osv.dev/vulnerability/CVE-2021-45098",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2021-45098",
"summary": "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.",
"evidence": "osv:CVE-2021-45098",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2021-45098",
"aliases": [
"CVE-2021-45098"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/oisf/suricata",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "e9c8767b905fcae53432076572bfbeaf639b202d"
},
{
"fixed": "50e2b973eeec7172991bf8f544ab06fb782b97df"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:oisf:suricata:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "6.0.4"
}
],
"source": "CPE_RANGE"
},
{
"range": [
{
"fixed": "50e2b973eeec7172991bf8f544ab06fb782b97df"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"suricata-6.0.3",
"suricata-6.0.2",
"suricata-6.0.1",
"suricata-6.0.0",
"suricata-6.0.0-rc1",
"suricata-6.0.0-beta1",
"suricata-5.0.1",
"suricata-5.0.0",
"suricata-5.0.0-rc1",
"suricata-5.0.0-beta1",
"suricata-4.1.2",
"suricata-4.1.1",
"suricata-4.1.0",
"suricata-4.1.0-rc2",
"suricata-4.1.0-rc1",
"suricata-4.1.0-beta1",
"suricata-4.0.1",
"suricata-4.0.0",
"suricata-4.0.0-rc2",
"suricata-4.0.0-rc1",
"suricata-4.0.0-beta1",
"suricata-3.2.1",
"suricata-3.2",
"suricata-3.2RC1",
"suricata-3.2beta1",
"suricata-3.1.2",
"suricata-3.1.1",
"suricata-3.1",
"suricata-3.0.1",
"suricata-3.1RC1",
"suricata-3.0.1RC1",
"suricata-3.0",
"suricata-3.0RC3",
"suricata-3.0RC2",
"suricata-3.0RC1",
"suricata-2.1beta4",
"suricata-2.1beta3",
"suricata-2.1beta2",
"suricata-2.1beta1",
"suricata-2.0.2",
"suricata-2.0.1",
"suricata-2.0.1rc1",
"suricata-2.0",
"suricata-2.0rc3",
"suricata-2.0rc2",
"suricata-2.0rc1",
"suricata-2.0beta2",
"suricata-2.0beta1",
"suricata-1.4",
"suricata-1.4rc1",
"suricata-1.4beta3",
"suricata-1.4beta2",
"suricata-1.4beta1",
"suricata-1.3.1",
"suricata-1.3",
"suricata-1.3rc1",
"suricata-1.3beta2",
"suricata-1.3beta1",
"suricata-1.2.1",
"suricata-1.2",
"suricata-1.2rc1",
"suricata-1.2beta1",
"suricata-1.1",
"suricata-1.1rc1",
"suricata-1.1beta3",
"suricata-1.1beta2",
"suricata-1.1beta1",
"suricata-1.0.2",
"suricata-1.0.1",
"suricata-1.0.0",
"suricata-0.8.2"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-45098.json",
"vanir_signatures": [
{
"id": "CVE-2021-45098-7bd00631",
"digest": {
"length": 3056,
"function_hash": "32798937301964368305689530638561933616"
},
"source": "https://github.com/oisf/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df",
"target": {
"file": "src/decode-tcp.c",
"function": "DecodeTCPOptions"
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2021-45098-9ab0b7c9",
"digest": {
"threshold": 0.9,
"line_hashes": [
"298668671455610702915103447051742258437",
"256631810295012211850575970957164370311",
"123383077366789806747570069411808274271",
"274369461503223323845070479388222163445",
"81252066565862047776416149689762193267",
"194126627155482699807327090414817736513",
"279325392824502007740694175045747413119",
"108132844981397602831514210151998199529",
"61372347601594444231145274006763826344",
"25892010124558066242332141158214465535"
]
},
"source": "https://github.com/oisf/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df",
"target": {
"file": "src/stream-tcp.c"
},
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2021-45098-ca76ba9c",
"digest": {
"threshold": 0.9,
"line_hashes": [
"170552253051911852146487529132580135837",
"163062811452642697869803281768232611934",
"285868154989856370439780572676159995884",
"220648413416416060419813201480483870163"
]
},
"source": "https://github.com/oisf/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df",
"target": {
"file": "src/decode-tcp.c"
},
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2021-45098-d0e22e0d",
"digest": {
"threshold": 0.9,
"line_hashes": [
"132295267061987848369583130253603522180",
"241660162830298340947169635807810546259",
"271631569540684670286125895492242638263",
"308873693325180287847751687015928839693",
"6429480766519447554244969506203846599"
]
},
"source": "https://github.com/oisf/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df",
"target": {
"file": "src/decode-tcp.h"
},
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1"
},
{
"id": "CVE-2021-45098-d2306e1a",
"digest": {
"length": 831,
"function_hash": "208081842680579566268159183757970571539"
},
"source": "https://github.com/oisf/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df",
"target": {
"file": "src/stream-tcp.c",
"function": "StreamTcpPacketStateClosed"
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2021-45098-d767947c",
"digest": {
"length": 4279,
"function_hash": "54448183064142838596041141727351530953"
},
"source": "https://github.com/oisf/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df",
"target": {
"file": "src/stream-tcp.c",
"function": "StreamTcpValidateRst"
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1"
}
],
"vanir_signatures_modified": "2026-10-20T14:06:55Z"
}
}
],
"modified": "2026-10-20T14:06:55.761317129Z",
"provider": "osv",
"references": [
"https://lists.debian.org/debian-lts-announce/2025/03/msg00029.html",
"https://forum.suricata.io/t/suricata-6-0-4-and-5-0-8-released/1942",
"https://github.com/OISF/suricata/releases",
"https://github.com/OISF/suricata/commit/50e2b973eeec7172991bf8f544ab06fb782b97df",
"https://redmine.openinfosecfoundation.org/issues/4710"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*",
"cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*",
"cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*"
],
"vendor_product": "debian:debian_linux",
"extracted_events": [
{
"range": [
{
"introduced": "9.0"
},
{
"last_affected": "9.0"
},
{
"introduced": "10.0"
},
{
"last_affected": "10.0"
},
{
"introduced": "11.0"
},
{
"last_affected": "11.0"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2021-45098",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 388570,
"published_at": "2021-12-16T05:15:08.727+00:00"
}