CVE-2023-46302 json
Apache Submarine: Fix CVE-2022-1471 SnakeYaml unsafe deserialization
published 2023-11-20 2 y ago modified 2026-06-17 4 mo ago also GHSA-8hcr-5x2g-9f7j , PYSEC-2023-240 , EUVD-2023-0042
- cvss
- 9.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.7%
- EPSS 1.7% chance of exploitation in 30 days, percentile 77%
- public exploits
- 0
- none known
Summary
Apache Software Foundation Apache Submarine has a bug when serializing against yaml. The bug is caused by snakeyaml https://nvd.nist.gov/vuln/detail/CVE-2022-1471 .
Apache Submarine uses JAXRS to define REST endpoints. In order to handle YAML requests (using application/yaml content-type), it defines a YamlEntityProvider entity provider that will process all incoming YAML requests. In order to unmarshal the request, the readFrom method is invoked, passing the entityStream containing the user-supplied data in `submarine-server/server-core/src/main/java/org/apache/submarine/server/utils/YamlUtils.java`.
We have now fixed this issue in the new version by replacing to `jackson-dataformat-yaml`. This issue affects Apache Submarine: from 0.7.0 before 0.8.0. Users are recommended to upgrade to version 0.8.0, which fixes this issue. If using the version smaller than 0.8.0 and not want to upgrade, you can try cherry-pick PR https://github.com/apache/submarine/pull/1054 and rebuild the submart-server image to fix this.
Patch / fix
- pypi apache-submarine 0.8.0
- Apache Software Foundation Apache Submarine 0.8.0
- github.com/apache/submarine#1054 pull request
Exploit prediction
1.75% chance of exploitation in the next 30 days, higher than 77% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- issues.apache.org https://issues.apache.org/jira/browse/SUBMARINE-1371 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | apache-submarine | >=0.7.0, <0.8.0 |
0.8.0 |
Affected products
- Apache Software Foundation Apache Submarine
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
References
-
github.com
/apache/submarine/pull/1054
patch, web, issue-tracking
-
issues.apache.org
/jira/browse/SUBMARINE-1371
issue-tracking, web, exploit
-
lists.apache.org
/thread/zf0wppzh239j4h131hm1dbswfnztxrr5
vendor-advisory, web, mailing-list
-
nvd.nist.gov
/vuln/detail/CVE-2023-46302
advisory
-
github.com
/pypa/advisory-database/tree/main/vulns/apache-submarine/PYSEC-2023-240.yaml
web
-
github.com
/advisories/GHSA-8hcr-5x2g-9f7j
advisory
Sources
- CVE List CVE-2023-46302
- GitHub Advisory GHSA-8hcr-5x2g-9f7j
- NVD CVE-2023-46302
- OSV PYSEC-2023-240
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.