CVE-2021-39880: apollo_upload_server has Denial of Service vulnerability
6.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.58976%
CWE
-
Published
5/24/2022
Updated
3/27/2023
KEV Status
No
Technology
Ruby
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| apollo_upload_server | rubygems | < 2.1.0 | 2.1.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from improper array index handling in the GraphQL data builder. The commit diff shows the vulnerable version used 'field[splited_path.last.to_i] = wrapped_file' without validation. The patched version adds strict index validation (verify_array_index!) and integer parsing (parse_array_index) to prevent out-of-bounds writes. The HackerOne report demonstrates how crafted 'map' parameters with large indices could force the server to generate massive error responses, confirming this function's role in the vulnerability.