High
Security advisory
An issue was discovered in http/ContentLengthInterpreter.cc in Squid before 4.12 and 5.x before 5.0.3. A Request Smuggling and Poisoning attack can succeed against the HTTP cache. The client sends an HTTP request with a Content-Length header containing "+\ "-" or an uncommon shell whitespace character prefix to the length field-value.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2020-15049
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 09:37 UTC · Revision 1
Source evidence
An issue was discovered in http/ContentLengthInterpreter.cc in Squid before 4.12 and 5.x before 5.0.3. A Request Smuggling and Poisoning attack can succeed against the HTTP cache. The client sends an HTTP request with a Content-Length header containing "+\ "-" or an uncommon shell whitespace character prefix to the length field-value.
osv:CVE-2020-15049
Complete source record
{
"id": "91e19db6cd4558338e8ceb54e616727b87b90d10e7937e403bdb62bb947ec07d",
"url": "https://osv.dev/vulnerability/CVE-2020-15049",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2020-15049",
"summary": "An issue was discovered in http/ContentLengthInterpreter.cc in Squid before 4.12 and 5.x before 5.0.3. A Request Smuggling and Poisoning attack can succeed against the HTTP cache. The client sends an HTTP request with a Content-Length header containing \"+\\ \"-\" or an uncommon shell whitespace character prefix to the length field-value.",
"evidence": "osv:CVE-2020-15049",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2020-15049",
"aliases": [
"CVE-2020-15049",
"GHSA-qf3v-rc95-96j5"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/squid-cache/squid",
"type": "GIT",
"events": [
{
"introduced": "f188960023551b2e9cb2a9df245b92bfeef37056"
},
{
"last_affected": "6cfeb300caf423ff49a0511d8bd43a56f3418273"
},
{
"introduced": "0"
},
{
"fixed": "5ba5ba8c40cb11d62886ee60fe6c3646f815fdea"
},
{
"fixed": "f4cfdb7a62168bef09f8cfa438c2a730206c82ed"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:squid-cache:squid:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.1"
},
{
"last_affected": "3.5.28"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:squid-cache:squid:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "4.0"
},
{
"fixed": "4.12"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:squid-cache:squid:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "5.0"
},
{
"fixed": "5.0.3"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"SQUID_5_0_2",
"SQUID_4_11",
"SQUID_5_0_1",
"SQUID_4_10",
"SQUID_4_9",
"SQUID_4_8",
"SQUID_4_7",
"M-staged-PR365",
"M-staged-PR370",
"M-staged-PR376",
"M-staged-PR375",
"SQUID_4_6",
"M-staged-PR373",
"M-staged-PR372",
"M-staged-PR319",
"M-staged-PR366",
"M-staged-PR351",
"M-staged-PR342",
"M-staged-PR364",
"M-staged-PR359",
"SQUID_4_5",
"M-staged-PR348",
"M-staged-PR345",
"SQUID_4_4",
"M-staged-PR314",
"SQUID_3_5_28",
"M-staged-PR306",
"SQUID_4_3",
"M-staged-PR294",
"M-staged-PR299",
"M-staged-PR295",
"M-staged-PR293",
"M-staged-PR164",
"SQUID_4_2",
"M-staged-PR276",
"M-staged-PR274",
"SQUID_3_5_27",
"M-staged-PR264",
"M-staged-PR268",
"M-staged-PR267",
"M-staged-PR266",
"M-staged-PR258",
"M-staged-PR230",
"M-staged-PR255",
"M-staged-PR252",
"M-staged-PR229",
"M-staged-PR241",
"M-staged-PR239",
"M-staged-PR242",
"SQUID_4_1",
"M-staged-PR235",
"M-staged-PR238",
"M-staged-PR218",
"M-staged-PR237",
"M-staged-PR227",
"M-staged-PR202",
"M-staged-PR225",
"SQUID_4_0_25",
"M-staged-PR220",
"M-staged-PR221",
"M-staged-PR210",
"M-staged-PR209",
"M-staged-PR208",
"M-staged-PR198",
"M-staged-PR206",
"M-staged-PR182",
"M-staged-PR195",
"M-staged-PR199",
"M-staged-PR200",
"M-staged-PR196",
"M-staged-PR193",
"M-staged-PR181",
"M-staged-PR189",
"M-staged-PR176",
"M-staged-PR186",
"SQUID_4_0_24",
"M-staged-PR179",
"M-staged-PR170",
"M-staged-PR161",
"SQUID_4_0_23",
"SQUID_4_0_22",
"SQUID_4_0_21",
"SQUID_3_5_26",
"SQUID_4_0_20",
"SQUID_3_5_25",
"SQUID_4_0_19",
"SQUID_3_5_24",
"SQUID_4_0_18",
"SQUID_3_5_23",
"SQUID_4_0_17",
"SQUID_4_0_16",
"SQUID_3_5_22",
"SQUID_4_0_15",
"SQUID_3_5_21",
"SQUID_4_0_14",
"SQUID_4_0_13",
"SQUID_3_5_20",
"SQUID_4_0_12",
"SQUID_4_0_11",
"SQUID_3_5_19",
"SQUID_4_0_10",
"SQUID_3_5_18",
"SQUID_3_5_17",
"SQUID_4_0_9",
"SQUID_3_5_16",
"SQUID_4_0_8",
"SQUID_3_5_15",
"SQUID_4_0_7",
"SQUID_3_5_14",
"SQUID_4_0_6",
"SQUID_4_0_5",
"SQUID_3_5_13",
"SQUID_4_0_4",
"SQUID_3_5_12",
"SQUID_4_0_3",
"SQUID_3_5_11",
"SQUID_4_0_2",
"SQUID_4_0_1",
"SQUID_3_5_10",
"SQUID_3_5_9",
"SQUID_3_5_8",
"SQUID_3_5_7",
"SQUID_3_5_6",
"SQUID_3_5_5",
"SQUID_3_5_4",
"SQUID_3_5_3",
"SQUID_3_5_2",
"SQUID_3_5_1",
"SQUID_3_5_0_4",
"SQUID_3_5_0_3",
"SQUID_3_5_0_2",
"SQUID_3_5_0_1",
"take00",
"SQUID_3_0_RC1",
"SQUID_3_0_PRE7",
"SQUID_3_0_PRE6",
"SQUID_3_0_PRE5",
"SQUID_3_0_PRE4",
"SQUID_3_0_PRE3",
"SQUID_3_0_PRE2",
"SQUID_3_0_PRE1",
"HISTORIC_RELEASES"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2020-15049.json"
}
}
],
"modified": "2026-10-20T10:45:34.998015926Z",
"provider": "osv",
"references": [
"https://lists.debian.org/debian-lts-announce/2020/10/msg00005.html",
"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/3RG5FGSTCAYVIJPJHIY3MRZ7NFT6HDO7/",
"https://usn.ubuntu.com/4551-1/",
"https://github.com/squid-cache/squid/security/advisories/GHSA-qf3v-rc95-96j5",
"https://security.netapp.com/advisory/ntap-20210312-0001/",
"https://www.debian.org/security/2020/dsa-4732"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:a:squid-cache:squid:*:*:*:*:*:*:*:*"
],
"vendor_product": "squid-cache:squid",
"extracted_events": [
{
"range": [
{
"introduced": "2.0"
},
{
"last_affected": "2.6"
}
],
"source": "CPE_RANGE"
}
]
},
{
"cpes": [
"cpe:2.3:o:fedoraproject:fedora:31:*:*:*:*:*:*:*"
],
"vendor_product": "fedoraproject:fedora",
"extracted_events": [
{
"range": [
{
"introduced": "31"
},
{
"last_affected": "31"
}
],
"source": "CPE_STRING"
}
]
},
{
"cpes": [
"cpe:2.3:a:squid-cache:squid:2.7:*:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable2:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable3:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable4:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable5:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable6:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable7:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable8:*:*:*:*:*:*",
"cpe:2.3:a:squid-cache:squid:2.7:stable9:*:*:*:*:*:*"
],
"vendor_product": "squid-cache:squid",
"extracted_events": [
{
"range": [
{
"introduced": "2.7"
},
{
"last_affected": "2.7"
},
{
"introduced": "2.7-stable2"
},
{
"last_affected": "2.7-stable2"
},
{
"introduced": "2.7-stable3"
},
{
"last_affected": "2.7-stable3"
},
{
"introduced": "2.7-stable4"
},
{
"last_affected": "2.7-stable4"
},
{
"introduced": "2.7-stable5"
},
{
"last_affected": "2.7-stable5"
},
{
"introduced": "2.7-stable6"
},
{
"last_affected": "2.7-stable6"
},
{
"introduced": "2.7-stable7"
},
{
"last_affected": "2.7-stable7"
},
{
"introduced": "2.7-stable8"
},
{
"last_affected": "2.7-stable8"
},
{
"introduced": "2.7-stable9"
},
{
"last_affected": "2.7-stable9"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2020-15049",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 379296,
"published_at": "2020-06-30T18:15:12.367+00:00"
}