Vulnerability · Published Dec 23, 2022 · Assigned by hackerone

CVE-2022-43551

High 7.5

In plain English

A high-severity security flaw in https://github.com/curl/curl. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 16.6% (higher than 97% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.5High
Exploit odds (30 days)16.6%top 3.0% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

A vulnerability exists in curl <7.87.0 HSTS check that could be bypassed to trick it to keep using HTTP. Using its HSTS support, curl can be instructed to use HTTPS instead of using an insecure clear-text HTTP step even when HTTP is provided in the URL. However, the HSTS mechanism could be bypassed if the host name in the given URL first uses IDN characters that get replaced to ASCII counterparts as part of the IDN conversion. Like using the character UTF-8 U+3002 (IDEOGRAPHIC FULL STOP) instead of the common ASCII full stop (U+002E) `.`. Then in a subsequent request, it does not detect the HSTS state and makes a clear text transfer. Because it would store the info IDN encoded but look for it IDN decoded.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Alpine:v3.20curl7.87.0-r0ALPINE-CVE-2022-43551
Alpine:v3.21curl7.87.0-r0ALPINE-CVE-2022-43551
Alpine:v3.22curl7.87.0-r0ALPINE-CVE-2022-43551
Alpine:v3.23curl7.87.0-r0ALPINE-CVE-2022-43551
Alpine:v3.24curl7.87.0-r0ALPINE-CVE-2022-43551
Debian:12curl7.86.0-3DEBIAN-CVE-2022-43551
Debian:13curl7.86.0-3DEBIAN-CVE-2022-43551
Debian:14curl7.86.0-3DEBIAN-CVE-2022-43551
Ubuntu:22.04:LTScurl7.81.0-1ubuntu1.7UBUNTU-CVE-2022-43551
Ubuntu:22.04:LTScurl7.81.0-1ubuntu1.7USN-5788-1

Affected products (as reported)

VendorProductVersions
n/a https://github.com/curl/curl Fixed in curl 7.87.0

Weakness: CWE-319 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

References