CVE-2026-69084
KrytyczneCVSS 10.0Prawdopodobieństwo exploitacji (EPSS)
Wysokie ryzykoPercentyl 75 - wyżej niż 75% wszystkich znanych CVE
Streszczenie
SiYuan w wersjach <= v3.7.2 udostępnia punkt końcowy /api/search/searchEmbedBlock, który przekazuje dostarczoną przez klienta instrukcję SQL dosłownie do głównego uchwytu siyuan.db z możliwością odczytu i zapisu, bez ograniczeń dotyczących pojedynczej instrukcji, tylko do odczytu lub administracyjnych. Punkt końcowy jest chroniony tylko przez CheckAuth, co czyni go osiągalnym przez token publish RoleReader oraz przez anonimowych użytkowników, gdy uwierzytelnianie publikacji jest wyłączone. Ponieważ sterownik wykonuje instrukcje składowane, atakujący może odczytywać i modyfikować zawartość wszystkich otwartych notatników w postaci jawnego tekstu (notatniki szyfrowane per-box są wykluczone). Poprawiono w v3.7.3.
Ocena ryzyka
Ryzyko obejmuje odczyt i modyfikację danych w niezaszyfrowanych notatnikach, co może prowadzić do naruszenia poufności i integralności danych.
Rekomendacja
Zaleca się natychmiastową aktualizację SiYuan do wersji v3.7.3 lub nowszej oraz włączenie uwierzytelniania dla wszystkich punktów końcowych.
Inne podatności w SiYuan
Zobacz wszystkie- CVE-2026-103763Średnie
SiYuan przed wersją v3.8.5 zawiera podatność ujawniania informacji, która pozwala czytelnikom z uprawnieniami tylko do odczytu poznać metadane dokumentów wykluczonych z publikacji za pośrednictwem punktu końcowego getNotebookInfo. Atakujący, w tym anonimowi goście, gdy nie ustawiono hasła czytelnika, mogą zapytać o widoczne publikacyjnie notatniki, aby uzyskać liczbę dokumentów, rozmiar i znaczniki czasu modyfikacji ukrytych dokumentów.
- CVE-2026-100636Wysokie
Wersje SiYuan przed v3.8.4 zawierają podatność typu path traversal w endpointcie exportBrowserHTML, która pozwala uwierzytelnionym administratorom zapisywać dowolną treść HTML do pliku index.html poza katalogiem workspace. Atakujący może podać parametr folder z sekwencjami przejścia katalogowego, aby wydostać się z katalogu eksportu i nadpisać index.html w dowolnej istniejącej lokalizacji zapisywalnej przez jądro, co umożliwia trwały XSS lub defacement workspace.
- CVE-2026-92986Wysokie
SiYuan przed wersją 3.8.4 renderuje tytuły dokumentów jako HTML w drzewie backlinków bez escapowania znaków znaczników. Atakujący może ustawić złośliwe tytuły przez API zmiany nazwy lub spreparowane notatniki, aby wykonać skrypty w rendererze Electron z dostępem do child_process i wykonaniem poleceń.
- CVE-2026-92985Wysokie
SiYuan w wersjach przed 3.8.4 nie escapuje etykiet zakładek importowanych z plików notatnika podczas renderowania ich w drzewie dock. Atakujący może przygotować złośliwe pliki .sy z nieescapowanym HTML w atrybutach zakładek, co prowadzi do wykonania skryptów w rendererze Electron z dostępem do child_process.
- CVE-2026-45371Wysokie
SiYuan to system zarządzania wiedzą, który przed wersją 3.7.0 miał luki w zabezpieczeniach związane z 8 nieograniczonymi API, które mogły modyfikować konfigurację i indeks SQL. Użytkownicy z odpowiednim tokenem JWT mogli uzyskać dostęp do tych API, co prowadziło do nieautoryzowanych zmian w stanie serwera.
- CVE-2026-41894Wysokie
SiYuan to system zarządzania wiedzą osobistą typu open-source. Przed wersją 3.6.5 poprawka dla CVE-2026-30869 dodała jedynie listę blokowanych ścieżek, ale nie rozwiązała źródła problemu – zbędnego wywołania url.PathUnescape() w funkcji serveExport(). Uwierzytelniony atakujący może użyć podwójnego kodowania URL (%252e%252e), aby przechodzić między katalogami i czytać dowolne pliki obszaru roboczego, w tym pełną bazę danych SQLite (siyuan.db), logi jądra i wszystkie dokumenty użytkowników.
- CVE-2026-84803Krytyczne
SiYuan przed wersją 3.8.2 zawiera podatność na trwały cross-site scripting (XSS) w serwowaniu zasobów z powodu niekompletnej listy blokowanych rozszerzeń, która pomija typy plików zdolne do wykonywania skryptów. Atakujący mogą przesyłać pliki z rozszerzeniami takimi jak .xht, .ehtml, .xsl, .xbl lub .rdf, które są interpretowane jako wykonywalne typy mediów, i wykonywać JavaScript w celu kradzieży tokenów API i naruszenia bezpieczeństwa obszarów roboczych.
- CVE-2026-77086Krytyczne
SiYuan przed wersją v3.7.4 nie waliduje parametru packageName w punktach końcowych instalacji i odinstalowania Bazaar, co pozwala uwierzytelnionym administratorom na przeprowadzenie ataku typu path traversal. Atakujący z dostępem administratorskim mogą zapisywać dowolne pliki w dowolnej lokalizacji lub rekurencyjnie usuwać katalogi, podając spreparowane wartości packageName.
- CVE-2026-74800Krytyczne
SiYuan przed wersją v3.7.4 nie ustawia nagłówków Content-Disposition i X-Content-Type-Options podczas serwowania dowolnych plików, co umożliwia ataki typu stored cross-site scripting. Uwierzytelnieni atakujący mogą przesłać pliki HTML jako zasoby i wykonać skrypty z pełnym dostępem do API jądra, gdy właściciel obszaru roboczego otworzy link do zasobu.
- CVE-2026-74799Krytyczne
SiYuan przed wersją 3.7.4 rejestruje punkty końcowe debugowania Go net/http/pprof, w tym zrzuty sterty i gorutyn, bez uwierzytelniania, gdy flaga --mode nie jest ustawiona dokładnie na prod. Atakujący mogą uzyskać dostęp do /debug/pprof/heap i powiązanych punktów końcowych, aby wyodrębnić tajemnice z pamięci, w tym AccessAuthCode i klucze API dostawcy AI.
Oryginalny opis (angielski, źródło NVD)
SiYuan versions <= v3.7.2 expose the /api/search/searchEmbedBlock endpoint, which passes a client-supplied SQL statement verbatim to the main read-write siyuan.db handle with no single-statement, read-only, or admin restrictions. The endpoint is gated only by CheckAuth, making it reachable by the publish RoleReader token and by anonymous users when publish authentication is disabled. Because the underlying driver executes stacked statements, an attacker can read and modify content across all opened cleartext notebooks (encrypted per-box notebooks are excluded). Fixed in v3.7.3.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

