Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify actix-files static file endpoint
-
DeliverySend GET request with empty Range header
-
ExploitHttpRange::parse() returns Ok(vec![])
-
ExecutionIndex into empty vector panics at named.rs:534
-
Persistpanic = abort terminates process
-
ImpactServer unavailable
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling completeness
|
| Exploitation Conditions | The vulnerability causes significant impact only when the application is compiled with |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) confirms maximum attacker-side ease: no authentication, no complexity, no user interaction, reachable over the network. The provided score uses VA:L (low availability impact to the vulnerable system), which reflects that most Rust applications use the default |
| Exploit ScenarioDerived | An attacker identifies a web service built with actix-files and compiled with |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 14, 2026
Remote process termination in actix-files 0.6.9 and earlier allows any unauthenticated network attacker to crash a Rust web server by sending a single GET request with an empty Range header, triggering a panic in the static file handler at named.rs:534. The vulnerability is only catastrophic when the application is compiled with panic = "abort" - the non-default Rust build profile - because in that mode the entire process terminates rather than unwinding the panicking thread. A publicly available proof-of-concept exists in the vendor advisory, and no public exploit identification beyond a netcat one-liner is required.
RemediationAI
Upgrade actix-files to version 0.6.10 or later by updating the dependency in Cargo.toml and running cargo update, per the vendor advisory GHSA-gcqf-3g44-vc9p (https://github.com/actix/actix-web/security/advisories/GHSA-gcqf-3g44-vc9p). If an immediate upgrade is blocked and the application is compiled with panic = "abort", switching the affected build profile back to panic = "unwind" (e.g., removing panic = "abort" from [profile.release] in Cargo.toml) eliminates the process-kill risk, though it changes panic behavior globally and may affect performance-critical or safety-sensitive code that depended on abort semantics. As an alternative network-level compensating control, configure a reverse proxy or WAF to reject or strip requests where the Range header is present but empty (e.g., an nginx directive matching Range: with no subsequent byte-range value); this prevents the malformed header from reaching actix-files but requires careful regex to avoid blocking valid Range requests.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in cargo, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
actix-files is the static file serving component of the actix-web Rust async HTTP framework (CPE: cpe:2.3:a:actix:actix-web:*). The root cause is CWE-248 (Uncaught Exception): at named.rs line 534, the code indexes into the result of HttpRange::parse() without verifying the returned vector is non-empty. When the HTTP Range header is present but empty (i.e., Range: with no value), HttpRange::parse() receives an empty string and returns Ok(vec![]) - a successful parse with zero elements - rather than an error. The subsequent vector index panics. Rust's panic behavior is controlled by the build profile: the default panic = "unwind" causes only the panicking worker thread to unwind, closing that connection while the server continues; panic = "abort" causes the entire OS process to terminate immediately, enabling remote DoS.
Know when Actix Web gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Attack requires no auth, no complexity, and no interaction; A:H reflects confirmed full process termination under the documented panic=abort configuration.
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
actix-files before 0.6.10 contains a denial of service vulnerability triggered by an empty Range header in GET requests for static files. When panic is set to abort, remote attackers can crash the process on-demand by sending a GET request with an empty Range header.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Path traversal in the actix-files Rust crate (versions 0.6.9 and earlier) exposes arbitrary files from the application's
HTTP request smuggling in actix-http (versions up to and including 3.12.0) allows unauthenticated remote attackers to de
Same weakness CWE-248 – Uncaught Exception
View allSame technique Denial Of Service
View allVendor StatusVendor
SUSE
Severity: Important| Product | Status |
|---|---|
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Not-Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Not-Affected |
| openSUSE Leap 16.0 | Affected |
EUVD-2026-58628
GHSA-v47c-94r2-rjm7
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB