DRUPAL-CORE-2022-011
The advisory, in context
Updated 22:00 UTC 2022-06-10: Added steps to update without drupal/core-recommended.
Drupal uses the third-party Guzzle library for handling HTTP requests and responses to external services. Guzzle has released two security advisories:
- Failure to strip the Cookie header on change in host or HTTP downgrade
- Fix failure to strip Authorization header on HTTP downgrade
These do not affect Drupal core, but may affect some contributed projects or custom code on Drupal sites.
We are issuing this security advisory outside our regular Drupal security release window schedule since Guzzle has already published information about the vulnerabilities, and vulnerabilities might exist in contributed modules or custom modules that use Guzzle for outgoing requests. Guzzle has rated these vulnerabilities as high-risk.
This advisory is not covered by Drupal Steward.
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
From 4.0.0 before 6.5.7
Fixed in 6.5.7
50 explicitly affected versions
4.0.0, 4.0.1, 4.0.2, 4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4, 4.1.5, 4.1.6, 4.1.7, 4.1.8, 4.2.0, 4.2.1, 4.2.2, 4.2.3, 4.2.4, 5.0.0, 5.0.1, 5.0.2, 5.0.3, 5.1.0, 5.2.0, 5.3.0, 5.3.1, 5.3.2, 5.3.3, 5.3.4, 6.0.0, 6.0.1, 6.0.2, 6.1.0, 6.1.1, 6.2.0, 6.2.1, 6.2.2, 6.2.3, 6.3.0, 6.3.1, 6.3.2, 6.3.3, 6.4.0, 6.4.1, 6.5.0, 6.5.1, 6.5.2, 6.5.3, 6.5.4, 6.5.5, 6.5.6
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "4.0.0"
},
{
"fixed": "6.5.7"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"4.0.0",
"4.0.1",
"4.0.2",
"4.1.0",
"4.1.1",
"4.1.2",
"4.1.3",
"4.1.4",
"4.1.5",
"4.1.6",
"4.1.7",
"4.1.8",
"4.2.0",
"4.2.1",
"4.2.2",
"4.2.3",
"4.2.4",
"5.0.0",
"5.0.1",
"5.0.2",
"5.0.3",
"5.1.0",
"5.2.0",
"5.3.0",
"5.3.1",
"5.3.2",
"5.3.3",
"5.3.4",
"6.0.0",
"6.0.1",
"6.0.2",
"6.1.0",
"6.1.1",
"6.2.0",
"6.2.1",
"6.2.2",
"6.2.3",
"6.3.0",
"6.3.1",
"6.3.2",
"6.3.3",
"6.4.0",
"6.4.1",
"6.5.0",
"6.5.1",
"6.5.2",
"6.5.3",
"6.5.4",
"6.5.5",
"6.5.6"
]
}From 7.0.0 before 7.4.4
Fixed in 7.4.4
10 explicitly affected versions
7.0.0, 7.0.1, 7.1.0, 7.1.1, 7.2.0, 7.3.0, 7.4.0, 7.4.1, 7.4.2, 7.4.3
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "7.0.0"
},
{
"fixed": "7.4.4"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"7.0.0",
"7.0.1",
"7.1.0",
"7.1.1",
"7.2.0",
"7.3.0",
"7.4.0",
"7.4.1",
"7.4.2",
"7.4.3"
]
}From 8.0.0 before 9.2.21
Fixed in 9.2.21
From 9.3.0 before 9.3.16
Fixed in 9.3.16
249 explicitly affected versions
8.0.0, 8.0.1, 8.0.2, 8.0.3, 8.0.4, 8.0.5, 8.0.6, 8.1.0, 8.1.0-beta1, 8.1.0-beta2, 8.1.0-rc1, 8.1.1, 8.1.10, 8.1.2, 8.1.3, 8.1.4, 8.1.5, 8.1.6, 8.1.7, 8.1.8, 8.1.9, 8.2.0, 8.2.0-beta1, 8.2.0-beta2, 8.2.0-beta3, 8.2.0-rc1, 8.2.0-rc2, 8.2.1, 8.2.2, 8.2.3, 8.2.4, 8.2.5, 8.2.6, 8.2.7, 8.2.8, 8.3.0, 8.3.0-alpha1, 8.3.0-beta1, 8.3.0-rc1, 8.3.0-rc2, 8.3.1, 8.3.2, 8.3.3, 8.3.4, 8.3.5, 8.3.6, 8.3.7, 8.3.8, 8.3.9, 8.4.0, 8.4.0-alpha1, 8.4.0-beta1, 8.4.0-rc1, 8.4.0-rc2, 8.4.1, 8.4.2, 8.4.3, 8.4.4, 8.4.5, 8.4.6, 8.4.7, 8.4.8, 8.5.0, 8.5.0-alpha1, 8.5.0-beta1, 8.5.0-rc1, 8.5.1, 8.5.10, 8.5.11, 8.5.12, 8.5.13, 8.5.14, 8.5.15, 8.5.2, 8.5.3, 8.5.4, 8.5.5, 8.5.6, 8.5.7, 8.5.8, 8.5.9, 8.6.0, 8.6.0-alpha1, 8.6.0-beta1, 8.6.0-beta2, 8.6.0-rc1, 8.6.1, 8.6.10, 8.6.11, 8.6.12, 8.6.13, 8.6.14, 8.6.15, 8.6.16, 8.6.17, 8.6.18, 8.6.2, 8.6.3, 8.6.4, 8.6.5, 8.6.6, 8.6.7, 8.6.8, 8.6.9, 8.7.0, 8.7.0-alpha1, 8.7.0-alpha2, 8.7.0-beta1, 8.7.0-beta2, 8.7.0-rc1, 8.7.1, 8.7.10, 8.7.11, 8.7.12, 8.7.13, 8.7.14, 8.7.2, 8.7.3, 8.7.4, 8.7.5, 8.7.6, 8.7.7, 8.7.8, 8.7.9, 8.8.0, 8.8.0-alpha1, 8.8.0-beta1, 8.8.0-rc1, 8.8.1, 8.8.10, 8.8.11, 8.8.12, 8.8.2, 8.8.3, 8.8.4, 8.8.5, 8.8.6, 8.8.7, 8.8.8, 8.8.9, 8.9.0, 8.9.0-beta1, 8.9.0-beta2, 8.9.0-beta3, 8.9.0-rc1, 8.9.1, 8.9.10, 8.9.11, 8.9.12, 8.9.13, 8.9.14, 8.9.15, 8.9.16, 8.9.17, 8.9.18, 8.9.19, 8.9.2, 8.9.20, 8.9.3, 8.9.4, 8.9.5, 8.9.6, 8.9.7, 8.9.8, 8.9.9, 9.0.0, 9.0.0-alpha1, 9.0.0-alpha2, 9.0.0-beta1, 9.0.0-beta2, 9.0.0-beta3, 9.0.0-rc1, 9.0.1, 9.0.10, 9.0.11, 9.0.12, 9.0.13, 9.0.14, 9.0.2, 9.0.3, 9.0.4, 9.0.5, 9.0.6, 9.0.7, 9.0.8, 9.0.9, 9.1.0, 9.1.0-alpha1, 9.1.0-beta1, 9.1.0-rc1, 9.1.0-rc2, 9.1.0-rc3, 9.1.1, 9.1.10, 9.1.11, 9.1.12, 9.1.13, 9.1.14, 9.1.15, 9.1.2, 9.1.3, 9.1.4, 9.1.5, 9.1.6, 9.1.7, 9.1.8, 9.1.9, 9.2.0, 9.2.0-alpha1, 9.2.0-beta1, 9.2.0-beta2, 9.2.0-beta3, 9.2.0-rc1, 9.2.1, 9.2.10, 9.2.11, 9.2.12, 9.2.13, 9.2.14, 9.2.15, 9.2.16, 9.2.17, 9.2.18, 9.2.19, 9.2.2, 9.2.20, 9.2.3, 9.2.4, 9.2.5, 9.2.6, 9.2.7, 9.2.8, 9.2.9, 9.3.0, 9.3.1, 9.3.10, 9.3.11, 9.3.12, 9.3.13, 9.3.14, 9.3.15, 9.3.2, 9.3.3, 9.3.4, 9.3.5, 9.3.6, 9.3.7, 9.3.8, 9.3.9
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "8.0.0"
},
{
"fixed": "9.2.21"
}
],
"type": "ECOSYSTEM",
"database_specific": {
"constraint": ">= 8.0.0 <9.2.21"
}
},
{
"events": [
{
"introduced": "9.3.0"
},
{
"fixed": "9.3.16"
}
],
"type": "ECOSYSTEM",
"database_specific": {
"constraint": ">= 9.3.0 <9.3.16"
}
}
],
"versions": [
"8.0.0",
"8.0.1",
"8.0.2",
"8.0.3",
"8.0.4",
"8.0.5",
"8.0.6",
"8.1.0",
"8.1.0-beta1",
"8.1.0-beta2",
"8.1.0-rc1",
"8.1.1",
"8.1.10",
"8.1.2",
"8.1.3",
"8.1.4",
"8.1.5",
"8.1.6",
"8.1.7",
"8.1.8",
"8.1.9",
"8.2.0",
"8.2.0-beta1",
"8.2.0-beta2",
"8.2.0-beta3",
"8.2.0-rc1",
"8.2.0-rc2",
"8.2.1",
"8.2.2",
"8.2.3",
"8.2.4",
"8.2.5",
"8.2.6",
"8.2.7",
"8.2.8",
"8.3.0",
"8.3.0-alpha1",
"8.3.0-beta1",
"8.3.0-rc1",
"8.3.0-rc2",
"8.3.1",
"8.3.2",
"8.3.3",
"8.3.4",
"8.3.5",
"8.3.6",
"8.3.7",
"8.3.8",
"8.3.9",
"8.4.0",
"8.4.0-alpha1",
"8.4.0-beta1",
"8.4.0-rc1",
"8.4.0-rc2",
"8.4.1",
"8.4.2",
"8.4.3",
"8.4.4",
"8.4.5",
"8.4.6",
"8.4.7",
"8.4.8",
"8.5.0",
"8.5.0-alpha1",
"8.5.0-beta1",
"8.5.0-rc1",
"8.5.1",
"8.5.10",
"8.5.11",
"8.5.12",
"8.5.13",
"8.5.14",
"8.5.15",
"8.5.2",
"8.5.3",
"8.5.4",
"8.5.5",
"8.5.6",
"8.5.7",
"8.5.8",
"8.5.9",
"8.6.0",
"8.6.0-alpha1",
"8.6.0-beta1",
"8.6.0-beta2",
"8.6.0-rc1",
"8.6.1",
"8.6.10",
"8.6.11",
"8.6.12",
"8.6.13",
"8.6.14",
"8.6.15",
"8.6.16",
"8.6.17",
"8.6.18",
"8.6.2",
"8.6.3",
"8.6.4",
"8.6.5",
"8.6.6",
"8.6.7",
"8.6.8",
"8.6.9",
"8.7.0",
"8.7.0-alpha1",
"8.7.0-alpha2",
"8.7.0-beta1",
"8.7.0-beta2",
"8.7.0-rc1",
"8.7.1",
"8.7.10",
"8.7.11",
"8.7.12",
"8.7.13",
"8.7.14",
"8.7.2",
"8.7.3",
"8.7.4",
"8.7.5",
"8.7.6",
"8.7.7",
"8.7.8",
"8.7.9",
"8.8.0",
"8.8.0-alpha1",
"8.8.0-beta1",
"8.8.0-rc1",
"8.8.1",
"8.8.10",
"8.8.11",
"8.8.12",
"8.8.2",
"8.8.3",
"8.8.4",
"8.8.5",
"8.8.6",
"8.8.7",
"8.8.8",
"8.8.9",
"8.9.0",
"8.9.0-beta1",
"8.9.0-beta2",
"8.9.0-beta3",
"8.9.0-rc1",
"8.9.1",
"8.9.10",
"8.9.11",
"8.9.12",
"8.9.13",
"8.9.14",
"8.9.15",
"8.9.16",
"8.9.17",
"8.9.18",
"8.9.19",
"8.9.2",
"8.9.20",
"8.9.3",
"8.9.4",
"8.9.5",
"8.9.6",
"8.9.7",
"8.9.8",
"8.9.9",
"9.0.0",
"9.0.0-alpha1",
"9.0.0-alpha2",
"9.0.0-beta1",
"9.0.0-beta2",
"9.0.0-beta3",
"9.0.0-rc1",
"9.0.1",
"9.0.10",
"9.0.11",
"9.0.12",
"9.0.13",
"9.0.14",
"9.0.2",
"9.0.3",
"9.0.4",
"9.0.5",
"9.0.6",
"9.0.7",
"9.0.8",
"9.0.9",
"9.1.0",
"9.1.0-alpha1",
"9.1.0-beta1",
"9.1.0-rc1",
"9.1.0-rc2",
"9.1.0-rc3",
"9.1.1",
"9.1.10",
"9.1.11",
"9.1.12",
"9.1.13",
"9.1.14",
"9.1.15",
"9.1.2",
"9.1.3",
"9.1.4",
"9.1.5",
"9.1.6",
"9.1.7",
"9.1.8",
"9.1.9",
"9.2.0",
"9.2.0-alpha1",
"9.2.0-beta1",
"9.2.0-beta2",
"9.2.0-beta3",
"9.2.0-rc1",
"9.2.1",
"9.2.10",
"9.2.11",
"9.2.12",
"9.2.13",
"9.2.14",
"9.2.15",
"9.2.16",
"9.2.17",
"9.2.18",
"9.2.19",
"9.2.2",
"9.2.20",
"9.2.3",
"9.2.4",
"9.2.5",
"9.2.6",
"9.2.7",
"9.2.8",
"9.2.9",
"9.3.0",
"9.3.1",
"9.3.10",
"9.3.11",
"9.3.12",
"9.3.13",
"9.3.14",
"9.3.15",
"9.3.2",
"9.3.3",
"9.3.4",
"9.3.5",
"9.3.6",
"9.3.7",
"9.3.8",
"9.3.9"
]
}References
- https://github.com/guzzle/guzzle/security/advisories/GHSA-f2wf-25xc-69c9
- https://nvd.nist.gov/vuln/detail/CVE-2022-31042
- https://github.com/guzzle/guzzle/commit/e3ff079b22820c2029d4c2a87796b6a0b8716ad8
- https://github.com/FriendsOfPHP/security-advisories/blob/master/guzzlehttp/guzzle/CVE-2022-31042.yaml
- https://github.com/guzzle/guzzle
- https://www.debian.org/security/2022/dsa-5246
- https://www.drupal.org/sa-core-2022-011
- https://www.rfc-editor.org/rfc/rfc9110.html#name-redirection-3xx