CVE-2021-31590 json
PwnDoc all versions until 0.4.0 (2021-08-23) has incorrect JSON Webtoken handling, leading to incorrect access control.
published 2021-07-19 5 y ago modified 2026-06-17 4 mo ago also EUVD-2021-18484
- cvss
- 8.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 2.7%
- EPSS 2.7% chance of exploitation in 30 days, percentile 85%
- public exploits
- 0
- none known
Summary
PwnDoc all versions until 0.4.0 (2021-08-23) has incorrect JSON Webtoken handling, leading to incorrect access control. With a valid JSON Webtoken that is used for authentication and authorization, a user can keep his admin privileges even if he is downgraded to the "user" privilege. Even after a user's account is deleted, the user can still access the administration panel (and add or delete users) and has complete access to the system.
Patch / fix
- pwndoc_project pwndoc 0.4.0
- github.com/pwndoc/pwndoc@15f3dc0 commit
- github.com/pwndoc/pwndoc@ff1b868 commit
- github.com/pwndoc/pwndoc#128 pull request
- github.com/pwndoc/pwndoc#74 pull request
- github.com/pwndoc/pwndoc/blob/59519735b0d831d8fd96d7c3387f66d28407e58… advisory
Exploit prediction
2.65% chance of exploitation in the next 30 days, higher than 85% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- dgc.org https://www.dgc.org/responsible_disclosure_pwndoc_jwt referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 9.0 | AV:N/AC:L/Au:S/C:C/I:C/A:C |
References
-
github.com
/pwndoc/pwndoc/pull/128
patch, third-party-advisory
-
github.com
/pwndoc/pwndoc/pull/74
patch, third-party-advisory
-
github.com
/pwndoc/pwndoc/commit/15f3dc0e212eda465e05fda0feb002d1bce2939d
patch, third-party-advisory
-
github.com
/pwndoc/pwndoc/commit/ff1b868cec55f5b6c7a91e15a2b0b1f4324121ab
patch, third-party-advisory
-
github.com
/pwndoc/pwndoc/blob/59519735b0d831d8fd96d7c3387f66d28407e583/CHANGELOG.md#040-2021-08-23
patch, release-notes, third-party-advisory
-
dgc.org
/responsible_disclosure_pwndoc_jwt
exploit, third-party-advisory
-
github.com
/pwndoc/pwndoc/security/advisories
broken-link
Sources
- CVE List CVE-2021-31590
- NVD CVE-2021-31590
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.