CRLF injection in Refit's [Header], [HeaderCollection] and [Authorize] attributes
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.
Summary
Refit is an automatic type-safe REST library for .NET Core, Xamarin and .NET The various header-related Refit attributes (Header, HeaderCollection and Authorize) are vulnerable to CRLF injection. The way HTTP headers are added to a request is via the `HttpHeaders.TryAddWithoutValidation` method. This method does not check for CRLF characters in the header value. This means that any headers added to a refit request are vulnerable to CRLF-injection. In general, CRLF-injection into a HTTP header (when using HTTP/1.1) means that one can inject additional HTTP headers or smuggle whole HTTP requests. If an application using the Refit library passes a user-controllable value through to a header, then that application becomes vulnerable to CRLF-injection. This is not necessarily a security issue for a command line application like the one above, but if such code were present in a web application then it becomes vulnerable to request splitting (as shown in the PoC) and thus Server Side Request Forgery. Strictly speaking this is a potential vulnerability in applications using Refit and not in Refit itself. This issue has been addressed in release versions 7.2.22 and 8.0.0 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| reactiveui | refit | before 7.2.22 | 7.2.22 | Patch available | CNA |
| — | Refit (NuGet) | before 7.2.22 | 7.2.22 | Patch available | GHSA-3hxg-fxwm-8gf7 |
- refit Vendorreactiveui Affected before 7.2.22 Fixed in 7.2.22 Patch available CNA
- Refit (NuGet) Vendor— Affected before 7.2.22 Fixed in 7.2.22 Patch available GHSA-3hxg-fxwm-8gf7
CPE names CISA-ADP · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:reactiveui:refit:*:*:*:*:*:*:*:* | — | — | reactiveui |
- cpe:2.3:a:reactiveui:refit:*:*:*:*:*:*:*:* Versions — — ·reactiveui
Remediation
- Fix · CNA refit (reactiveui) Fixed in 7.2.22
- Fix · GHSA-3hxg-fxwm-8gf7 Refit (NuGet) Fixed in 7.2.22 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2024-51501
- 2026-10-03 Alias added: GHSA-3hxg-fxwm-8gf7
References
Other 4
- https://github.com/reactiveui/refit/security/advisories/GHSA-3hxg-fxwm-8gf7
- https://github.com/reactiveui/refit/blob/258a771f44417c6e48e103ac921fe4786f3c2a1e/Refit/RequestBuilderImplementation.cs#L1328
- https://github.com/reactiveui/refit/commit/483b1d8df18098f137ca0eca056b7e9ec19f70dd
- https://github.com/reactiveui/refit
Sources
- CVE-2024-51501 · CVE Program
- CVE-2024-51501 · NVD
- FIRST EPSS
- GHSA-3hxg-fxwm-8gf7 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences