CVE-2026-77364
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 14 - wyżej niż 14% wszystkich znanych CVE
Streszczenie
obsidian-tc to zarządzany serwer Model Context Protocol dla sejfów Obsidian. W wersjach przed 1.3.1 niezdefiniowane ustawienia readPaths i writePaths zezwalają na wszystkie ścieżki, strictReadDefault nie chroni bezpośrednich żądań, a katalogi kontrolne .obsidian, .git i .trash są wykluczane tylko podczas enumeracji. Uwierzytelniony wywołujący może bezpośrednio odczytać wrażliwe pliki, takie jak .obsidian/plugins/*/data.json.
Ocena ryzyka
Może to prowadzić do ujawnienia kluczy API wtyczek, haseł Obsidian Sync i innych danych w sejfie. Stanowi to poważne naruszenie poufności danych przechowywanych w sejfie Obsidian.
Rekomendacja
Należy zaktualizować obsidian-tc do wersji 1.3.1 lub nowszej, która domyślnie blokuje katalogi kontrolne i wymusza strictReadDefault na bezpośrednich ścieżkach żądań. Zaleca się również przegląd uprawnień dostępu i rotację potencjalnie ujawnionych kluczy API.
Inne podatności w obsidian-tc
Zobacz wszystkie- CVE-2026-77366Krytyczne
W obsidian-tc przed wersją 1.3.1 dyspozytor narzędzi nie porównuje wartości input.vault kontrolowanej przez wywołującego z sejfem przypisanym do wywołującego, token JWT nie zawiera roszczenia vault, a lista kontroli dostępu do folderów jest współdzielona globalnie. Każdy ważny token może wybrać inny skonfigurowany sejf i odczytywać, zapisywać lub usuwać jego zawartość.
- CVE-2026-115478Wysokie
W obsidian-tc (od 1.0.1 do 1.31.4) narzędzia create_entity, link_entities, rename_entity, unlink_entities i delete_entity regenerują notatki pamięci z SQLite pod ścieżką memory/<typ>/<nazwa>.md bez niezawodnego zachowania własności notatki, co może nadpisać całą treść ręcznie utworzonej notatki lub osieroconej notatki innej encji o tej samej znormalizowanej ścieżce. Ponadto kilka narzędzi modyfikuje SQLite przed operacjami na systemie plików, więc błąd zapisu może pozostawić niespójny graf pamięci względem notatek na dysku.
- CVE-2026-115477Wysokie
W obsidian-tc w wersjach od 1.13.0 do 1.31.4, wdrożenie Streamable HTTP z skonfigurowanym `auth.jwtSecret` pozwalało na obejście potwierdzenia człowieka przy wywołaniach narzędzi oznaczonych jako destrukcyjne. Serwer ufał ważnemu powiązanemu z wywołaniem `requestState` jako dowodowi zatwierdzenia, mimo że stan ten był tworzony przed zapytaniem `elicitation/create` i potwierdzał jedynie przynależność ponownego zgłoszenia do tego samego wywołania. Klient działający niepoprawnie lub pod kontrolą atakującego mógł wykonać destrukcyjne operacje na skarbcu bez zgody człowieka, zachowując zwykłe uprawnienia narzędzia.
- CVE-2026-77362Średnie
obsidian-tc przed wersją 1.3.1 nie stosuje spójnie listy kontroli dostępu (ACL) do wszystkich zwracanych pól. Narzędzie tasks_filter ujawnia liczby grup pochodzące z niedozwolonych notatek, makemd_query przekazuje nieprzefiltrowane pola wynikowe, a list_templates ujawnia ścieżki szablonów i treści funkcji użytkownika bez sprawdzenia białej listy odczytu. Uwierzytelniony wywołujący może wywnioskować lub odczytać dane z notatek spoza swojej listy ACL.
- CVE-2026-77361Średnie
obsidian-tc przed wersją 1.3.1 sprawdza listę kontroli dostępu (ACL) na podstawie leksykalnej ścieżki względem katalogu, podczas gdy sprawdzenia zawierania używają ścieżki rozwiązanej. Dowiązanie symboliczne w katalogu, które jest dozwolone przez glob, ale wskazuje na zabroniony folder, może ominąć ACL i ujawnić pliki w zabronionym folderze. Wykorzystanie wymaga dowiązania symbolicznego umieszczonego poza pasmem i nie pozwala na wyjście poza katalog główny.
- CVE-2026-77363Wysokie
Podatność w obsidian-tc, serwerze Model Context Protocol dla vaultów Obsidian, przed wersją 1.3.1, nie waliduje nagłówków Host lub Origin ani nie włącza ochrony przed DNS-rebinding w transporcie Streamable HTTP. Przy konfiguracji loopback z auth.mode ustawionym na none, złośliwa strona internetowa może wysyłać żądania do lokalnego punktu końcowego MCP i uzyskać nieograniczony dostęp do vaultu przez wywołanie http-local. Wersja 1.3.1 naprawia problem poprzez włączenie walidacji hosta, origin i DNS-rebinding.
Oryginalny opis (angielski, źródło NVD)
obsidian-tc is a governed, agent-ready Model Context Protocol server for Obsidian vaults. Prior to 1.3.1, undefined readPaths and writePaths settings allow all paths, strictReadDefault does not protect direct requests, and the .obsidian, .git, and .trash control directories are excluded only during enumeration. An authenticated caller can directly read sensitive files such as .obsidian/plugins/*/data.json, potentially exposing plugin API keys, Obsidian Sync passwords, and other in-vault data. Version 1.3.1 fixes the vulnerability by denying the control directories by default and enforcing strictReadDefault on direct request paths.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

