CVE-2026-47754: unauthenticated path traversal in Metacat 2.x

Published Aug 10, 2026
·
Updated

Metacat is data repository software that helps researchers preserve, share, and discover data. Versions 2.x through 2.19.1 and all 1.x versions contain an unauthenticated path traversal in the archiveEntryName parameter of the action=read endpoint that is part of the original 1.x Metacat API. ArchiveHandler.readArchiveEntry() concatenates the user-supplied parameter into a filesystem path without validation, and the surrounding hasReadPermission() check is commented out. An unauthenticated remote attacker can read any file accessible to the Tomcat process by sending a single GET request. Proof-of-concept exploits have been demonstrated and verified against this vulnerability, and it should be considered easily exploitable for any Metacat deployment < 3.0.0 by any user with access to the 1.x API. Through this vulnerability, production 2.x deployments are exposed to credential theft, client certificate and private key exfiltration enabling member node impersonation within the federation, embargoed research data disclosure, and broad system reconnaissance. Given Metacat's deployment footprint across the DataONE network of repositories and federally funded research programs, the population of exposed 2.x instances is non-trivial. The vulnerability was eliminated in Metacat version 3.0.0 and after by eliminating the entire Metacat 1.x API that exposed this vulnerability. The vulnerability was remediated in April 2024 with the release of Metacat 3.0.0, which removed the legacy Metacat API including ArchiveHandler.java. The commit message and issue reference architectural cleanup, not a security fix, and no advisory or CVE was issued. The 2.x branch was not and will not be backported, as is standard practice in Metacat, which only supports the most current release. 2.19.1 remains vulnerable with identical code and is beyond its supported lifetime. As a workaround, disable or restrict 1.x API servlets. Because the vulnerable 1.x API is no longer used or necessary in most Metacat deployments, restricting access to the old API endpoints can reduce or eliminate exposure for 2.19.x deployments. After removing those features, restart Tomcat or whichever software is hosting the servlets.

Affected Software

2 affected components
Metacat>=2.0<3.0.0
Metacat>=1.0<=1.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Metacat to a version that resolves this vulnerability.

    Fixed in 3.0.0
  2. Configuration

    As a workaround/mitigation for 2.x deployments, disable or restrict the legacy 1.x API servlets/endpoints (the 1.x API archive/action=read path traversal exposure) so unauthenticated users cannot reach them.

    Metacat (1.x API servlets) Access to legacy 1.x API endpoints (1.x API servlets) = disable_or_restrict
  3. Operational

    After removing those features, restart Tomcat (the servlet host) or whichever software is hosting the servlets so the disabled/restricted features take effect.

Event History

Aug 10, 2026
CVE Published
via MITRE·03:26 PM
Data Sourced
via MITRE·03:26 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·04:19 PM
DescriptionSeverityWeakness
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-47754?

CVE-2026-47754 has a severity rating of 9.3, classified as critical.

2

How do I fix CVE-2026-47754?

To mitigate CVE-2026-47754, upgrade to Metacat version 2.19.2 or later.

3

What type of vulnerability is CVE-2026-47754?

CVE-2026-47754 is an unauthenticated path traversal vulnerability in Metacat.

4

Which versions of Metacat are affected by CVE-2026-47754?

Metacat versions 2.x through 2.19.1 and all 1.x versions are affected by CVE-2026-47754.

5

What is the impact of CVE-2026-47754?

CVE-2026-47754 allows attackers to access sensitive files on the server due to unauthenticated path traversal.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203