CVE-2026-88939
WysokieCVSS 8.3Streszczenie
knowns do wersji 0.33.0 włącznie bezwarunkowo zwalnia akcję project.set z kontroli uprawnień. Sesje agenta z uprawnieniami tylko do odczytu mogą obejść ograniczenia, wywołując project.set, aby wskazać serwerowi inny katalog projektu i uzyskać możliwość zapisu.
Ocena ryzyka
Atakujący może obejść ograniczenia tylko do odczytu i uzyskać możliwość zapisu w innym katalogu projektu. Może to prowadzić do nieautoryzowanych modyfikacji danych.
Rekomendacja
Ogranicz możliwość wywoływania akcji project.set przez sesje tylko do odczytu i wdróż poprawkę, gdy tylko będzie dostępna. Do czasu jej wydania rozważ ograniczenie uprawnień sesji agenta.
Inne podatności w knowns
Zobacz wszystkie- CVE-2026-88940Średnie
Narzędzie knowns w wersjach do 0.33.0 nie waliduje parametru zapytania path w punkcie końcowym przeglądania workspace, co pozwala zdalnym atakującym na enumerację dowolnych katalogów w systemie plików hosta. Atakujący może przechodzić przez strukturę katalogów, aby zlokalizować katalogi projektów i zidentyfikować cele do dalszej eksploatacji.
- CVE-2026-88938Średnie
Narzędzie knowns w wersjach do 0.33.0 nie ogranicza argumentu path narzędzia MCP code.find do katalogu głównego projektu, co pozwala sesjom agenta AI na odczyt plików źródłowych w dowolnym miejscu hosta. Atakujący może podać ścieżki absolutne lub sekwencje przejścia relatywnego w argumencie path i pobrać pełną zawartość plików spoza zamierzonego katalogu projektu.
- CVE-2026-88937Wysokie
Narzędzie knowns w wersjach do 0.33.0 nieprawidłowo waliduje ścieżki docelowe szablonów w silniku generowania kodu, co pozwala na odczyt i zapis dowolnych plików poza katalogiem projektu. Atakujący może dostarczyć złośliwe szablony wykorzystujące przechodzenie katalogów (path traversal) do nadpisania profili powłoki, kradzieży poświadczeń lub trwałego wykonania kodu na systemie ofiary.
- CVE-2026-88899Krytyczne
Znane wersje przed 0.31.0 nieprawidłowo walidują nagłówek żądania x-opencode-directory w punkcie końcowym proxy /api/opencode. Zdalni atakujący mogą podać dowolne ścieżki katalogów, aby wykonywać operacje na plikach poza katalogiem głównym projektu w systemie hosta.
- CVE-2026-86543Krytyczne
Podatność w knowns przed wersją 0.30.0 polega na serwowaniu API zarządzania bez uwierzytelnienia na wszystkich interfejsach sieciowych domyślnie, bez wymaganego hasła na świeżych instalacjach. Atakujący mogą uzyskać dostęp do nieuwierzytelnionego punktu końcowego /api/tunnel/start, aby utworzyć publiczny tunel i opublikować API pod publicznie dostępnym adresem.
- CVE-2026-86542Krytyczne
Podatność w knowns przed wersją 0.30.0 polega na braku walidacji nazw importów w trasach importu, co pozwala nieuwierzytelnionym atakującym na zapisywanie plików poza katalogiem imports. Atakujący mogą użyć sekwencji przejścia do katalogu w parametrze name, aby opuścić katalog imports i nadpisać dowolne pliki zapisywalne przez proces serwera.
- CVE-2026-86775Wysokie
Pakiet npm "knowns" w wersjach <= 0.29.1 zawiera podatność path traversal w Document API. Funkcja cleanDocPath() nie neutralizuje sekwencji ../, a doc_store.go buduje ścieżkę docelową bez weryfikacji, czy znajduje się ona w katalogu dokumentów. W domyślnej konfiguracji (Management API bez uwierzytelniania, nasłuchujące na wszystkich interfejsach) zdalny nieuwierzytelniony atakujący może odczytywać, tworzyć, nadpisywać lub usuwać dowolne pliki .md oraz tworzyć katalogi na hoście. Podatność naprawiono w wersji 0.30.0.
- CVE-2026-86544Wysokie
Podatność w knowns przed wersją 0.30.0 zawiera obejście autoryzacji, gdzie akcje mutujące kod są błędnie klasyfikowane jako operacje tylko do odczytu. Atakujący z sesjami z ograniczonym odczytem mogą wykorzystać code.replace do modyfikacji konfiguracji uprawnień i eskalacji uprawnień w kolejnych wywołaniach.
- CVE-2026-86541Wysokie
Podatność w knowns przed wersją 0.30.0 zawiera podatność na przechodzenie po ścieżkach w funkcji handleCodeReplace(), która pozwala atakującym na nadpisywanie dowolnych plików poza katalogiem głównym projektu. Atakujący mogą podać ścieżki bezwzględne lub względne zawierające sekwencje przechodzenia po katalogach, aby zapisać złośliwą treść w wrażliwych plikach, takich jak skrypty startowe powłoki lub pliki konfiguracyjne SSH.
- CVE-2026-86540Wysokie
Podatność w knowns przed wersją 0.30.0 polega na braku walidacji pola binarnego settings.lsp.languages w plikach konfiguracyjnych projektu, co pozwala atakującym na wykonanie dowolnych plików binarnych poprzez spreparowanie złośliwego pliku .knowns/config.json. Gdy repozytorium z taką konfiguracją zostanie otwarte, niewalidowana ścieżka binarna jest wykonywana dwukrotnie na koncie użytkownika bez żadnej weryfikacji.
Oryginalny opis (angielski, źródło NVD)
knowns through 0.33.0 exempts the project.set action from permission guard checks unconditionally, allowing read-only agent sessions to bypass restrictions. Attackers can invoke project.set to repoint the server at another project directory and obtain write access capabilities.

