Bug 2335479 (CVE-2024-56332)

Summary: CVE-2024-56332 next.js: Next.js Vulnerable to Denial of Service (DoS) with Server Actions
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security DevOps Team <prodsec-dev>
Status: NEW --- QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: bkabrda, caswilli, chazlett, chfoley, gotiwari, jhorak, jscholz, kaycoth, lball, mlichvar, mvyas, ngough, swoodman, tpopela, veshanka
Target Milestone: ---Keywords: Reopened, Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in Next.js package. A denial of service (DoS) attack allows attackers to construct requests that leave requests to Server Actions hanging until the hosting provider cancels the function execution. The Next.js server is idle during that time and only keeps the connection open. The CPU and memory footprint are low during that time. This is the same issue as if the incoming HTTP request has an invalid Content-Length header or never closes. This vulnerability is novel if the host has no other mitigations for those.
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-01-06 10:17:38 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2335760, 2335748, 2335749, 2335750, 2335751, 2335752, 2335753, 2335754, 2335755, 2335756, 2335757, 2335758, 2335759, 2335761    
Bug Blocks:    

Description OSIDB Bzimport 2025-01-03 21:01:05 UTC
Next.js is a React framework for building full-stack web applications. Starting in version 13.0.0 and prior to versions 13.5.8, 14.2.21, and 15.1.2, Next.js is vulnerable to a Denial of Service (DoS) attack that allows attackers to construct requests that leaves requests to Server Actions hanging until the hosting provider cancels the function execution. This vulnerability can also be used as a Denial of Wallet (DoW) attack when deployed in providers billing by response times. (Note: Next.js server is idle during that time and only keeps the connection open. CPU and memory footprint are low during that time.). Deployments without any protection against long running Server Action invocations are especially vulnerable. Hosting providers like Vercel or Netlify set a default maximum duration on function execution to reduce the risk of excessive billing. This is the same issue as if the incoming HTTP request has an invalid `Content-Length` header or never closes. If the host has no other mitigations to those then this vulnerability is novel. This vulnerability affects only Next.js deployments using Server Actions. The issue was resolved in Next.js 13.5.8, 14.2.21, and 15.1.2. We recommend that users upgrade to a safe version. There are no official workarounds.

Comment 2 Miroslav Lichvar 2025-01-06 10:17:38 UTC
The conky upstream tarball includes the source code of the upstream website, which seems to be using next.js, but that is not included in the rpms we build for Fedora.

Comment 3 Miroslav Lichvar 2025-01-06 10:19:04 UTC
I closed the wrong bug. Sorry for the noise.