CVE-2026-32685
ŚrednieCVSS 4.6Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 5 - wyżej niż 5% wszystkich znanych CVE
Streszczenie
Podatność path traversal w obsłudze niestandardowych stron dokumentacji w Gleam (wersje od 1.16.0 do 1.17.0) pozwala na odczyt i zapis plików poza zamierzonym katalogiem wyjściowym dokumentacji. Pola documentation.pages[].path i .source są używane bez wystarczającej walidacji.
Ocena ryzyka
Atakujący może nakłonić ofiarę do uruchomienia polecenia na niezaufanym projekcie, co prowadzi do włączenia lokalnych plików do dokumentacji lub zapisu plików poza zamierzonym katalogiem.
Rekomendacja
Zaktualizuj Gleam do wersji 1.17.0 lub nowszej.
Inne podatności w Gleam
Zobacz wszystkie- CVE-2026-59247Wysokie
W narzędziu Gleam wykryto podatność polegającą na niewystarczającej weryfikacji autentyczności danych. Podczas rozwiązywania zależności atakujący typu man-in-the-middle może podmienić zawartość pakietów Hex na sfałszowane, ponieważ drugie żądanie do API Hex nie jest podpisane, a jego odpowiedź jest używana zamiast zweryfikowanych metadanych z repozytorium.
- CVE-2026-43965Średnie
Podatność typu path traversal w menedżerze zależności Gleam (wersje od 0.18.0-rc1 do 1.17.0) pozwala na usunięcie dowolnego katalogu poprzez złośliwą zawartość pliku build/packages/packages.toml. Klucze pakietów są używane bez walidacji do konstruowania ścieżek, co umożliwia użycie sekwencji ../ do wyjścia poza zamierzony katalog.
- CVE-2026-42795Średnie
Podatność związana z podążaniem za dowiązaniami symbolicznymi w eksporcie pakietów Hex w Gleam umożliwia osadzenie plików spoza katalogu projektu w generowanym archiwum pakietu. Funkcje zbierające pliki (gleam_files, native_files, private_files) używają follow_links(true) podczas przeszukiwania katalogów publikowalnych, a dodawanie ścieżek do archiwum nie weryfikuje, czy rozpoznany cel pozostaje w obrębie katalogu projektu.
- CVE-2026-32146Wysokie
W kompilatorze Gleam wykryto podatność polegającą na nieprawidłowej walidacji ścieżek podczas obsługi zależności git. Nazwy zależności z plików gleam.toml i manifest.toml są używane do tworzenia ścieżek bez wystarczającego zabezpieczenia, co pozwala na manipulację ścieżką (np. ../) i dostęp do plików poza docelowym katalogiem zależności. Atakujący może wykorzystać złośliwą zależność do usunięcia lub nadpisania dowolnych katalogów, a w niektórych środowiskach doprowadzić do wykonania kodu.
Oryginalny opis (angielski, źródło NVD)
Path traversal vulnerability in Gleam's handling of custom documentation pages allows arbitrary file read and file write outside the intended documentation output directory. The documentation.pages entries from gleam.toml are incorporated into filesystem paths without sufficient validation or confinement to the intended project and documentation output directories. The documentation.pages[].path field can be used to write generated documentation files outside the intended build/dev/docs/<package>/ output directory. The documentation.pages[].source field can be used to read files outside the project directory and embed their contents into generated documentation output. An attacker who can convince a victim to run gleam docs build on an untrusted project, or with untrusted gleam.toml content, can cause local files readable by the victim to be included in generated documentation artifacts, and can cause generated documentation files to be written outside the intended docs output directory. This issue affects Gleam from 1.16.0 until 1.17.0.

