← CVE Veritabanı

CVE-2026-47754

Kritik

Teknik Veri (Otomatik)

CVSS Skoru
9.3
EPSS
0.5%
CWE
CWE-22
KEV Durumu
Hayır

Yayım tarihi: 10 Ağustos 2026

Metacat, araştırmacıların verileri korumalarına, paylaşmalarına ve keşfetmelerine yardımcı olan bir veri deposu yazılımıdır. 2.x sürümleri 2.19.1'e ve tüm 1.x sürümleri, orijinal 1.x Metacat API'sinin bir parçası olan `action=read` endpoint'indeki `archiveEntryName` parametresinde kimlik doğrulaması yapılmayan bir path traversal içerir. `ArchiveHandler.readArchiveEntry()` kullanıcı tarafından sağlanan parametreyi dosya sistemi yoluna doğrulama olmadan ekler ve çevreleyen `hasReadPermission()` kontrolü yorumlanmıştır. Kimlik doğrulaması yapılmamış bir uzaktan saldırgan, tek bir GET isteği göndererek Tomcat işlemi tarafından erişilebilen herhangi bir dosyayı okuyabilir. Kanıtlanma kavramı saldırıları bu güvenlik açığına karşı gösterilmiş ve doğrulanmıştır ve bu nedenle herhangi bir Metacat dağıtımı için < 3.0.0 kolayca sömürülebilmelidir ve 1.x API'sine erişimi olan herhangi bir kullanıcı tarafından kullanılabilir. Bu güvenlik açığı aracılığıyla, üretim 2.x dağıtımları kimlik bilgileri çalınmasına, istemci sertifikası ve özel anahtar sızdırılmasına, federasyondaki üye düğümün taklit edilmesine, araştırma verilerinin açıklanmasına ve geniş sistem keşfine maruz kalır. Metacat'in DataONE deposu ağı ve federal olarak finanse edilen araştırma programları boyunca dağıtım ayak izi dikkate alındığında, maruz kalan 2.x örneklerinin nüfusu önemsiz değildir. Güvenlik açığı, bu güvenlik açığını ortaya çıkaran tüm Metacat 1.x API'sini ortadan kaldırarak Metacat sürüm 3.0.0 ve sonrasında ortadan kaldırılmıştır. Güvenlik açığı Nisan 2024'te Metacat 3.0.0'ın yayınlanmasıyla, miras Metacat API'sini dahil olmak üzere ArchiveHandler.java'nın kaldırılmasıyla giderilmiştir. Taahhüt mesajı ve sorun referansı mimari temizleme, güvenlik düzeltmesi değil ve hiçbir danışmanlık veya CVE yayınlanmamıştır. 2.x dalı, Metacat'in standardı olan yalnızca en güncel sürümü desteklediği için geri taşınmayacak ve geri taşınmayacaktır. 2.19.1 aynı kodla hala güvenlik açığına karşı savunmasızdır ve desteklenen ömrünü doldurmuştur. Geçici bir çözüm olarak, 1.x API servlet'lerini devre dışı bırakın veya kısıtlayın. Güvenlik açığına karşı savunmasız olan eski API uç noktalarına erişimi kısıtlamak, çoğu Metacat dağıtımı için artık kullanılmayan veya gerekli olmayan güvenlik açığına karşı savunmasız 1.x API'sini azaltabilir veya ortadan kaldırabilir. Bu özellikleri kaldırdıktan sonra Tomcat veya servlet'leri barındıran yazılımları yeniden başlatın.

Orijinal açıklama (İngilizce)

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.

Bu CVE için henüz editoryal inceleme yapılmadı. Sadece otomatik teknik veri gösteriliyor.