CVE-2026-40265
ŚrednieCVSS 5.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 38 - wyżej niż 38% wszystkich znanych CVE
Streszczenie
W Note Mark w wersjach 0.19.1 i wcześniejszych endpoint /api/notes/{noteID}/assets/{assetID} nie wymaga uwierzytelnienia, a zapytanie backendu nie weryfikuje własności ani widoczności notatki. Nieuwierzytelniony użytkownik znający identyfikatory notatki i zasobu może pobrać pełną zawartość prywatnych zasobów notatki.
Ocena ryzyka
Poufne zasoby prywatnych notatek mogą zostać ujawnione nieuprawnionym osobom, co stanowi naruszenie poufności danych.
Rekomendacja
Zaktualizuj Note Mark do wersji 0.19.2, która naprawia tę podatność.
Inne podatności w Note Mark
Zobacz wszystkie- CVE-2026-44523Krytyczne
Aplikacja Note Mark przed wersją 0.19.4 nie wymusza minimalnej długości ani entropii dla wartości konfiguracyjnej JWT_SECRET. Umożliwia to akceptację dowolnego sekretu kodowanego w base64, w tym sekretów o długości zaledwie 1 bajta.
- CVE-2026-50553Wysokie
Note Mark przed wersją 0.19.5 nieprawidłowo waliduje wartości slug, ponieważ wzorzec OpenAPI/huma nie jest zakotwiczony, co pozwala na akceptację ścieżek zawierających segmenty ../. Komendy eksportu danych używają tych slugów do tworzenia plików poza katalogiem eksportu, co może prowadzić do zapisu plików z uprawnieniami roota.
- CVE-2026-50554Średnie
Note Mark to aplikacja do notatek o otwartym kodzie źródłowym. Przed wersją 0.19.5, GET /api/books/{bookID}/notes jest nieuwierzytelnionym punktem końcowym, który akceptuje parametr zapytania "deleted". Gdy żądanie ma ?deleted=true, usługa wykonuje zapytanie z Unscoped() (omijając zakres miękkiego usuwania GORM), ale zachowuje klauzulę autoryzacji odczytu jako "owner_id = ? OR is_public = ?". W rezultacie każdy nieuwierzytelniony wywołujący może wyliczyć metadane miękko usuniętych ("przeniesionych do kosza") notatek należących do dowolnej publicznej książki — notatek, które właściciel jawnie usunął i oczekiwał, że zostaną usunięte z widoku publicznego.
- CVE-2026-44522Wysokie
W Note Mark od wersji 0.13.0 do przed 0.19.4 nazwa pliku zasobu przesyłanego przez uwierzytelnionego użytkownika (nagłówek X-Name) jest zapisywana w bazie bez walidacji, co pozwala na sekwencje przejścia katalogów. Podczas eksportu CLI nazwa ta trafia do `filepath.Join()` i `os.Create()`, umożliwiając zapis plików w dowolnych lokalizacjach w systemie plików.
- CVE-2026-41572Średnie
Note Mark to aplikacja do robienia notatek. W wersjach przed 0.19.3 po miękkim usunięciu publicznej książki przez właściciela, jej notatki i przesłane zasoby pozostają czytelne pod /api/notes/{id}, /api/notes/{id}/content, adresem slug i endpointami zasobów. Nieuwierzytelnieni użytkownicy posiadający ID notatki lub ścieżkę slug zachowują dostęp. Zakres miękkiego usuwania GORM nie obejmuje surowych klauzul "JOIN books ..." używanych w zapytaniach o notatki i zasoby.
- CVE-2026-40263Niskie
W aplikacji Note Mark w wersjach 0.19.1 i wcześniejszych endpoint logowania wykonuje weryfikację hasła bcrypt tylko dla istniejących nazw użytkowników, zwracając natychmiast dla nieistniejących. Ta różnica czasu odpowiedzi pozwala nieuwierzytelnionym atakującym wyliczać prawidłowe nazwy użytkowników. Problem naprawiono w wersji 0.19.2.
Oryginalny opis (angielski, źródło NVD)
Note Mark is an open-source note-taking application. In versions 0.19.1 and prior, the asset download endpoint at /api/notes/{noteID}/assets/{assetID} is registered without authentication middleware, and the backend query does not verify ownership or book visibility. An unauthenticated user who knows a valid note ID and asset ID can retrieve the full contents of private note assets without authentication, regardless of whether the associated book is public or private. This issue has been fixed in version 0.19.2.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

