CVE-2026-104189

Yüksek

Açıklama

Nextcloud için 3D Viewer, birden fazla 3D dosya formatını destekleyen kapsamlı bir 3D model görüntüleyici uygulamasıdır. 1.7.9 ile 3.3.1 arasındaki sürümlerde, uygulamanın genel dosya uç noktası herhangi bir paylaşım yetkilendirmesi gerçekleştirmiyordu. Bir paylaşım belirtecini (share token) bilen herkes, bağlantı paylaşımı şifreyle korunuyor olsa bile paylaşılan dosyanın içeriğini okuyabiliyordu. `PublicFileController`, `OCP\AppFramework\Controller` sınıfından türetilmişti ve rotaları `#[PublicPage]` olarak işaretlenmişti. Nextcloud, paylaşım şifrelerini yalnızca `PublicShareMiddleware` aracılığıyla zorunlu kılar; bu middleware, `OCP\AppFramework\PublicShareController` örneği olmayan tüm denetleyiciler için işlemi erken sonlandırır; dolayısıyla bu rotalar için hiçbir şifre, süre aşımı veya paylaşım türü kontrolü çalıştırılmadı. `ShareFileService::loadLinkShare()` fonksiyonu, `getShareByToken()` tarafından eşleşen her belirteci yetkili kabul ederek bu durumu daha da kötüleştirdi. Paylaşım belirteci, kullanıcıların sohbetlere, e-postalara ve destek taleplerine yapıştırdığı URL kısmıdır. Şifre koruması, tam olarak belirtece sahip olmanın tek başına erişim sağlamaması gereken durumlar için mevcuttur ve bu garanti sağlanmamıştır. `GET /ocs/v2.php/apps/threedviewer/public/file/{token}/{fileId}` adresine yapılan istekler, şifre korumalı paylaşımlar için şifre ve oturum olmaksızın dosya gövdesinin tamamıyla birlikte `200` yanıtı döndürüyordu. Nextcloud'un kendi paylaşım sayfası ise bu tür istekleri doğru şekilde şifre istemine yönlendiriyordu. Kapsam, yalnızca bu uygulamanın işlediği formatlardaki dosyalarla (STL, GLB/glTF, OBJ, STEP, IFC ve diğer desteklenen 3D türleri) sınırlıdır. Aynı paylaşımdaki 3D olmayan dosyalar etkilenmemiştir. Süresi dolmuş paylaşımlar içerikleri sızdırmak yerine `500` hatası döndürmüştür. Bu sorun 3.3.2 sürümünde düzeltilmiştir. `PublicFileController` artık `PublicShareController` sınıfından türemekte ve `isValidToken()`, `isPasswordProtected()` ile `getPasswordHash()` fonksiyonlarını uygulayarak şifre ve belirteç doğrulamasını çerçeveye (framework) devretmekte ve kaba kuvvet (brute-force) yavaşlatma özelliğini kazanmaktadır. `ShareFileService::findValidLinkShare()` ek olarak bağlantı ve e-posta dışındaki paylaşım türlerini reddeder, süresi dolmuş paylaşımları reddeder ve paylaşım yöneticisinden gelen `ShareNotFound` hatasını 500 hatası olarak yüzeye çıkarmak yerine "paylaşım yok" şeklinde değerlendirir. Geçici çözüm olarak, yükseltme yapana kadar 3D Viewer uygulamasını devre dışı bırakın (`occ app:disable threedviewer`) veya 3D model dosyaları içeren bağlantı paylaşımlarını korumak için şifrelere güvenmekten kaçının.

ÖnemYüksek
CVSS7.5
İstismar olasılığı—
Ürün3Dviewer-Nextcloud
Yayın27 Eki 2026
İlk görülme27 Eki 2026

Nasıl düzeltilir

Kaynaklarda bu zafiyet için düzeltilmiş sürüm ya da yama bağlantısı yok.

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
maz1987in 3Dviewer-Nextcloud>= 1.7.9, < 3.3.2—

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.

CVE-2026-104189 · 3Dviewer-Nextcloud · Dark Radar