CVE-2022-3918 Other in Swift Foundation

High 8.8 Published Updated

Attackers can inject CRLF sequences into HTTP headers via swift-corelibs-foundation, potentially crafting extra requests or headers if user input is unsanitized.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2022-3918?

CVE-2022-3918 is a high-severity vulnerability in Swift Foundation, published on 20 Jan 2023. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

A program using FoundationNetworking in swift-corelibs-foundation is potentially vulnerable to CRLF ( ) injection in URLRequest headers. In this vulnerability, a client can insert one or several CRLF sequences into a URLRequest header value. When that request is sent via URLSession to an HTTP server, the server may interpret the content after the CRLF as extra headers, or even a second request. For example, consider a URLRequest to http://example.com/ with the GET method. Suppose we set the URLRequest header "Foo" to the value "Bar Extra-Header: Added GET /other HTTP/1.1". When this request is sent, it will appear to the server as two requests: GET / HTTP/1.1 Foo: Bar Extra-Header: Added GET /other HTTP/1.1 In this manner, the client is able to inject extra headers and craft an entirely new request to a separate path, despite only making one API call in URLSession. If a developer has total control over the request and its headers, this vulnerability may not pose a threat. However, this vulnerability escalates if un-sanitized user input is placed in header values. If so, a malicious user could inject new headers or requests to an intermediary or backend server. Developers should be especially careful to sanitize user input in this case, or upgrade their version of swift-corelibs-foundation to include the patch below.

Weakness: CWE-74

Which versions are affected by CVE-2022-3918?

It affects 1 product.

Products include Apple Swift Foundation.

How do I fix CVE-2022-3918?

No fix has been published for CVE-2022-3918 yet. Limit exposure of the affected software until one is available.

Is CVE-2022-3918 being exploited?

There is no known exploitation of CVE-2022-3918 in the wild and no public exploit code.

Sources

Also known as GHSA-4pp3-mpf2-rj63.

Is CVE-2022-3918 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free