CVE-2026-50553
Açıklama
Note Mark açık kaynaklı bir not alma uygulamasıdır. Versiyon 0.19.5 öncesinde Note Mark, kitap ve not slug değerlerini "[a-z0-9-]+" OpenAPI/huma etiket deseniyle doğrular. huma bunu regexp.MustCompile(s.Pattern) ile derler ve patternRe.MatchString(str) ile test eder; bu işlem SABİTLENMEMİŞ (UNANCHORED) bir eşleşmedir. Desen sabitlenmediği için (^...$), yalnızca tek bir [a-z0-9-] alt dizgesi İÇEREN herhangi bir dize doğrulamadan geçer. ../../../../../../tmp/escape gibi bir slug kabul edilir ve olduğu gibi saklanır. Veri dışa aktarma CLI komutları (note-mark migrate export ve note-mark migrate export-v1), bu temizlenmemiş slug'ları doğrudan path.Join / filepath.Join ile çıktı yoluna ekler, ardından os.MkdirAll ile dizini oluşturur ve os.Create ile not dosyasını oluşturur. path.Join işlemi ../ bölümlerini çözümlediğinden, not içerik dosyası yapılandırılmış dışa aktarma dizininin DIŞINA yazılır. Dışa aktarma işlemi genellikle root olarak çalıştırıldığından (Docker / çıplak metal yönetici kullanımında varsayılan), bu durum root yetkileriyle rastgele dizin oluşturma ve dosya yazma imkanı sağlar. Bu sorun versiyon 0.19.5 ile düzeltilmiştir.
Nasıl düzeltilir
- github.com/enchant97/note-mark/backend0.0.0-20260601210719-67b7de04308a ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| github.com/enchant97/note-mark/backendGo | v < 0.0.0-20260601210719-67b7de04308a | 0.0.0-20260601210719-67b7de04308a |
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.
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.