CVE-2022-39366 json
DataHub missing JWT signature check
published 4y ago modified 14d ago also GHSA-r8gm-v65f-c973 , PYSEC-2026-252 , EUVD-2022-7158
- cvss
- 9.9
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.1%
- EPSS 1.1% chance of exploitation in 30 days, percentile 66%
- public exploits
- 0
- none known
Summary
DataHub is an open-source metadata platform. Prior to version 0.8.45, the `StatelessTokenService` of the DataHub metadata service (GMS) does not verify the signature of JWT tokens. This allows an attacker to connect to DataHub instances as any user if Metadata Service authentication is enabled. This vulnerability occurs because the `StatelessTokenService` of the Metadata service uses the `parse` method of `io.jsonwebtoken.JwtParser`, which does not perform a verification of the cryptographic token signature. This means that JWTs are accepted regardless of the used algorithm. This issue may lead to an authentication bypass. Version 0.8.45 contains a patch for the issue. There are no known workarounds.
Patch / fix
- pypi acryl-datahub 0.8.45
- datahub datahub 0.8.45
Is CVE-2022-39366 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- last yr.
Exploit prediction
1.11% chance of exploitation in the next 30 days, higher than 66% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/datahub-project/datahub/blob/aa146db611e3a4ca3aa17bb740783f789d4444d3/metadata-service/auth-impl/src/main/java/com/datahub/authentication/token/StatelessTokenService.java#L134 referenced PoC, tagged "exploit" by a source, unverified
- github.com https://github.com/datahub-project/datahub/blob/aa146db611e3a4ca3aa17bb740783f789d4444d3/metadata-service/auth-impl/src/main/java/com/datahub/authentication/token/StatelessTokenService.java#L30 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 9.9 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 9.9 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L |
| GitHub | 3.1 | 9.9 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | acryl-datahub | <0.8.45 |
0.8.45 |
Affected products
- datahub-project datahub
Classification
References
-
github.com
/datahub-project/datahub/blob/aa146db611e3a4ca3aa17bb740783f789d4444d3/metadata-service/auth-impl/src/main/jav
web, exploit, third-party-advisory
-
github.com
/datahub-project/datahub/blob/aa146db611e3a4ca3aa17bb740783f789d4444d3/metadata-service/auth-impl/src/main/jav
web, exploit, third-party-advisory
-
github.com
/datahub-project/datahub/security/advisories/GHSA-r8gm-v65f-c973
web, third-party-advisory
-
codeql.github.com
/codeql-query-help/java/java-missing-jwt-signature-check/
third-party-advisory
-
github.com
/datahub-project/datahub/releases/tag/v0.8.45
web, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2022-39366
advisory
-
codeql.github.com
/codeql-query-help/java/java-missing-jwt-signature-check
web
-
github.com
/datahub-project/datahub
package
-
github.com
/pypa/advisory-database/tree/main/vulns/acryl-datahub/PYSEC-2026-252.yaml
web
-
pypi.org
/project/acryl-datahub
web, package
-
github.com
/advisories/GHSA-r8gm-v65f-c973
advisory
Sources
- CVE List CVE-2022-39366
- GitHub Advisory GHSA-r8gm-v65f-c973
- NVD CVE-2022-39366
- OSV PYSEC-2026-252
Fencer Intel 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.