CVE-2021-21363 json
Generator Web Application: Local Privilege Escalation Vulnerability via System Temp Directory
published 2021-03-11 5 y ago modified 2026-07-08 4 mo ago also GHSA-pc22-3g76-gm6j , EUVD-2021-0688
- cvss
- 5.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 36%
- public exploits
- 0
- none known
Summary
swagger-codegen is an open-source project which contains a template-driven engine to generate documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition. In swagger-codegen before version 2.4.19, on Unix like systems, the system's temporary directory is shared between all users on that system. A collocated user can observe the process of creating a temporary sub directory in the shared temporary directory and race to complete the creation of the temporary subdirectory. This vulnerability is local privilege escalation because the contents of the `outputFolder` can be appended to by an attacker. As such, code written to this directory, when executed can be attacker controlled. For more details refer to the referenced GitHub Security Advisory. This vulnerability is fixed in version 2.4.19. Note this is a distinct vulnerability from CVE-2021-21364.
Patch / fix
- maven io.swagger:swagger-codegen 2.4.19
- smartbear swagger-codegen 2.4.19
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2021-21363 updated cvss 7.0
swagger-codegen: local privilege escalation via insecure temporary directory
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
0.41% chance of exploitation in the next 30 days, higher than 36% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/swagger-api/swagger-codegen/security/advisories/GHSA-pc22-3g76-gm6j referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.3 | CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:C/C:N/I:H/A:N |
| NVD | 3.1 | 7.0 | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 4.4 | AV:L/AC:M/Au:N/C:P/I:P/A:P |
| GitHub | 3.1 | 9.3 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | io.swagger:swagger-codegen | <2.4.19 |
2.4.19 |
Affected products
- swagger-api swagger-codegen
Classification
References
-
github.com
/swagger-api/swagger-codegen/commit/987ea7a30b463cc239580d6ad166c707ae942a89
web, patch, third-party-advisory
-
github.com
/swagger-api/swagger-codegen/security/advisories/GHSA-pc22-3g76-gm6j
web, exploit, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2021-21363
advisory
Sources
- CVE List CVE-2021-21363
- GitHub Advisory GHSA-pc22-3g76-gm6j
- NVD CVE-2021-21363
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.