CVE-2022-31043
Fix failure to strip Authorization header on HTTP downgrade in Guzzle
At a glance
- Source
- NVD
- EPSS
- EPSS 1.96 % · percentile 80 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- GitHub_M
- NVD status
- Modified
Description
Guzzle is an open source PHP HTTP client. In affected versions `Authorization` headers on requests are sensitive information. On making a request using the `https` scheme to a server which responds with a redirect to a URI with the `http` scheme, we should not forward the `Authorization` header on. This is much the same as to how we don't forward on the header if the host changes. Prior to this fix, `https` to `http` downgrades did not result in the `Authorization` header being removed, only changes to the host. Affected Guzzle 7 users should upgrade to Guzzle 7.4.4 as soon as possible. Affected users using any earlier series of Guzzle should upgrade to Guzzle 6.5.7 or 7.4.4. Users unable to upgrade may consider an alternative approach which would be to use their own redirect middleware. Alternately users may simply disable redirects all together if redirects are not expected or required.
Weaknesses (CWE)
- CWE-200 — Exposure of Sensitive Information to an Unauthorized Actor
- CWE-212 — Improper Removal of Sensitive Information Before Storage or Transfer
References
- https://github.com/guzzle/guzzle/commit/e3ff079b22820c2029d4c2a87796b6a0b8716ad8
- https://www.rfc-editor.org/rfc/rfc9110.html#name-redirection-3xx
- https://github.com/guzzle/guzzle/security/advisories/GHSA-w248-ffj2-4v5q
- https://www.drupal.org/sa-core-2022-011
- https://www.debian.org/security/2022/dsa-5246
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | GitHub_M |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | NVD · security-advisories@github.com (Secondary) |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | NVD · nvd@nist.gov (Primary) |
| CVSS 2.0 | MEDIUM 5.0 | AV:N/AC:L/Au:N/C:P/I:N/A:N | NVD · nvd@nist.gov (Primary) |
Advisories
- DRUPAL-CORE-2022-011 — *Updated 22:00 UTC 2022-06-10: Added steps to update without `drupal/core-recommended`.*
- GHSA-f2wf-25xc-69c9 — Failure to strip the Cookie header on change in host or HTTP downgrade
- GHSA-w248-ffj2-4v5q — Fix failure to strip Authorization header on HTTP downgrade
European references
- ENISA EUVD · EUVD-2022-6168
- GCVE · GCVE-0-2022-31043
CERT-FR advisories
- CERTFR-2022-AVI-541 — Multiples vulnérabilités dans Drupal Core · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:a:guzzlephp:guzzle:*:*:*:*:*:*:*:*< 6.5.7cpe:2.3:a:guzzlephp:guzzle:*:*:*:*:*:*:*:*≥ 7.0.0 < 7.4.4cpe:2.3:a:drupal:drupal:*:*:*:*:*:*:*:*≥ 9.2.0 < 9.2.21cpe:2.3:a:drupal:drupal:*:*:*:*:*:*:*:*≥ 9.3.0 < 9.3.16cpe:2.3:a:drupal:drupal:9.4.0:alpha1:*:*:*:*:*:*cpe:2.3:a:drupal:drupal:9.4.0:beta1:*:*:*:*:*:*cpe:2.3:a:drupal:drupal:9.4.0:rc1:*:*:*:*:*:*cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*
Affected products
| Product | Versions |
|---|---|
| guzzle · guzzle | affected < 6.5.7 ; affected >=7.0.0, < 7.4.4 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |