CVE-2026-52781
ŚrednieCVSS 6.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 5 - wyżej niż 5% wszystkich znanych CVE
Streszczenie
OpenProject przed wersjami 17.3.3 i 17.4.1 zawiera podatność polegającą na nieograniczonym atrybucie data-* w znacznikach <macro> w sanitizerze HTML. Atakujący może wstrzyknąć atrybut data-controller="poll-for-changes" do opisu pakietu roboczego, co powoduje zamontowanie kontrolera Stimulus.js, który pobiera załącznik przesłany przez atakującego i przekazuje go do renderStreamMessage(), wykonując dowolne akcje Turbo Stream, w tym przekierowanie do zewnętrznego serwera.
Ocena ryzyka
Ryzyko polega na możliwości przejęcia sesji uwierzytelnionych użytkowników i przekierowania ich na złośliwą stronę, co może prowadzić do kradzieży danych lub dalszych ataków phishingowych.
Rekomendacja
Należy natychmiast zaktualizować OpenProject do wersji 17.3.3 lub 17.4.1, które zawierają poprawkę eliminującą tę podatność.
Inne podatności w OpenProject
Zobacz wszystkie- CVE-2026-22601Wysokie
OpenProject to otwartoźródłowe oprogramowanie do zarządzania projektami. W wersji 16.6.1 i niższych, administrator z uprawnieniami może wykonać dowolne polecenie systemowe, konfigurując ścieżkę do binarki sendmail i wysyłając testową wiadomość e-mail. Problem został naprawiony w wersji 16.6.2.
- CVE-2017-11667Wysokie
OpenProject w wersjach przed 6.1.6 oraz 7.x przed 7.0.3 niewłaściwie obsługuje wygasanie sesji, co pozwala zdalnym atakującym na nieograniczone wykonywanie żądań APIv3 poprzez wykorzystanie przejętej sesji.
- CVE-2026-52785Krytyczne
OpenProject przed wersjami 17.3.3 i 17.4.1 zawiera podatność na wstrzyknięcie SQL w funkcji znaczników czasu. Atakujący może wykorzystać parametr timestamps do wykonania nieautoryzowanych zapytań do bazy danych.
- CVE-2026-52782Krytyczne
W OpenProject przed wersjami 17.3.3 i 17.4.1 wykryto podatność IDOR w endpointcie /projects/<A>/settings/project_storages/<A_ps_id> przez parametr PATCH "storages_project_storage[project_folder_id]". Administrator projektu może przejąć zarządzany folder Nextcloud lub OneDrive innego projektu na tym samym magazynie, co prowadzi do nieautoryzowanego dostępu do zasobów.
- CVE-2026-46386Krytyczne
Oficjalny obraz Dockera OpenProject zawiera domyślny klucz SECRET_KEY_BASE=OVERWRITE_ME, co w połączeniu z serializatorem cookies :marshal umożliwia każdemu zalogowanemu użytkownikowi deterministyczną deserializację Marshal przez czytnik ciasteczek /my/two_factor_devices. Podatność została naprawiona w nowszej wersji.
- CVE-2026-34717Krytyczne
OpenProject przed wersją 17.2.3 zawiera podatność na wstrzykiwanie SQL w operatorze =n w pliku modules/reporting/lib/report/operator.rb:177. Operator ten osadza dane wejściowe użytkownika bezpośrednio w klauzulach WHERE SQL bez parametryzacji.
- CVE-2026-22600Krytyczne
OpenProject przed wersją 16.6.4 zawiera podatność Local File Read w eksporcie pakietów roboczych do PDF. Poprzez przesłanie specjalnie spreparowanego pliku SVG (udającego PNG) jako załącznika, atakujący może wykorzystać silnik ImageMagick do odczytu dowolnych plików lokalnych, do których ma dostęp użytkownik aplikacji.
- CVE-2026-55095Średnie
OpenProject to open-source'owe, webowe oprogramowanie do zarządzania projektami. W wersji 17.5.1 i wcześniejszych uwierzytelniony członek projektu bez uprawnień administratora może zażądać okna dialogowego edycji w miejscu dla surowego atrybutu projektu custom_field_. Ścieżka dialogu rozwiązuje pole niestandardowe projektu według jego surowego identyfikatora bez egzekwowania normalnego zakresu widoczności admin_only i renderuje przechowywany komentarz pola niestandardowego w trybie tylko do odczytu. To ujawnia ukryty tekst komentarza, ale nie ujawnia wartości pola niestandardowego ani nie pozwala na zapis lub modyfikację. Problem został naprawiony w wersji 17.6.0.
- CVE-2026-67529Średnie
OpenProject przed 17.6.0 w endpointach GET /api/v3/time_entries i GET /api/v3/cost_entries wyświetlał tytuły i identyfikatory prywatnych pakietów roboczych bez sprawdzania widoczności. Użytkownicy z uprawnieniami view_time_entries lub view_cost_entries mogli odczytać te dane.
- CVE-2026-67528Średnie
OpenProject przed 17.6.0 w endpointzie GET /api/v3/custom_options/:id rozwiązywał opcje niestandardowe po globalnym identyfikatorze numerycznym bez sprawdzania widoczności. Uwierzytelnieni niebędący administratorami mogli enumerować identyfikatory i odczytywać etykiety opcji przeznaczonych tylko dla administratorów.
Oryginalny opis (angielski, źródło NVD)
OpenProject is open-source, web-based project management software. Prior to 17.3.3 and 17.4.1, the HTML sanitizer grants <macro> elements unrestricted data-* attributes via :data wildcard. An attacker injects data-controller="poll-for-changes" into a work package description, causing Stimulus.js to mount a controller that fetches an attacker-uploaded attachment and passes it to renderStreamMessage(). This executes arbitrary Turbo Stream actions — including redirect_to — in every victim's authenticated browser session, redirecting them to an attacker-controlled server. This vulnerability is fixed in 17.3.3 and 17.4.1.

