CVE-2026-45378
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 23 - wyżej niż 23% wszystkich znanych CVE
Streszczenie
Decidim przed wersją 0.30.9, od 0.31.0 przed 0.31.5 oraz w 0.32.0.rc1 przed 0.32.0.rc2, interfejs administracyjny weryfikacji dokumentów tożsamości osadza załączniki `verification_attachment` przez wielokrotnego użytku podpisane URL-e Active Storage, co pozwala każdemu, kto uzyska URL, na pobranie zeskanowanego dokumentu bez uwierzytelnionej sesji Decidim, dopóki podpis nie wygaśnie. Obrazy dokumentów weryfikacyjnych są renderowane za pomocą `variant_url(...)`, co generuje podpisane linki `/rails/active_storage/disk/...` zamiast kierować plik przez kontroler sprawdzający autoryzację. Ponieważ Decidim konfiguruje URL-e usługi Active Storage tak, aby pozostawały ważne przez siedem dni, sam URL staje się poświadczeniem na ten okres.
Ocena ryzyka
Osoba nieupoważniona może pobrać wrażliwe dokumenty tożsamości, co prowadzi do naruszenia prywatności i potencjalnego wykorzystania danych osobowych.
Rekomendacja
Zaktualizuj Decidim do wersji 0.30.9, 0.31.5 lub 0.32.0.rc2, które zawierają poprawkę.
Inne podatności w Decidim
Zobacz wszystkie- CVE-2026-45573Średnie
Przed wersjami 0.30.9, 0.31.5 i 0.32.0.rc2, gdy dostarczanie VAPID jest włączone, przepływ subskrypcji powiadomień przechowuje dostarczony przez klienta endpoint push bez weryfikacji, czy należy on do zatwierdzonej usługi push. SendPushNotification przekazuje ten endpoint do WebPush.payload_send, co pozwala uwierzytelnionemu użytkownikowi na tworzenie przechowywanych, w większości ślepych żądań serwerowych do dowolnych osiągalnych endpointów HTTPS. Problem naprawiono w wersjach 0.30.9, 0.31.5 i 0.32.0.rc2.
- CVE-2026-45572Średnie
Przed wersjami 0.30.9, 0.31.5 i 0.32.0.rc2 administrator z uprawnieniami do edycji strony docelowej może przechowywać dowolny HTML i JavaScript w bloku treści HTML, który jest renderowany bez sanityzacji przez Decidim::ContentBlocks::HtmlCell#html_content, powodując wykonanie skryptu w przeglądarkach odwiedzających. Problem naprawiono w wersjach 0.30.9, 0.31.5 i 0.32.0.rc2.
- CVE-2026-45415Średnie
Przed wersjami 0.30.9, 0.31.5 i 0.32.0.rc2 endpointy `/admin/csv_census/census_logs` nie egzekwują pełnej autoryzacji administratora przed renderowaniem lub modyfikacją rekordów Decidim::Verifications::CsvDatum, co pozwala menedżerowi uczestników na tworzenie, zmianę lub usuwanie rekordów spisu. Problem naprawiono w wersjach 0.30.9, 0.31.5 i 0.32.0.rc2.
- CVE-2026-45414Wysokie
Decidim przed wersją 0.31.5 oraz w 0.32.0.rc1 przed 0.32.0.rc2, uwierzytelnianie API oparte na JWT nie jest powiązane z organizacją wybraną przez bieżący host, co pozwala na powtórne użycie JWT wydanego dla jednej dzierżawy (tenanta) przeciwko API innej dzierżawy w celu odczytania danych `participantDetails` i dotarcia do ścieżki mutacji `proposal.answer`.
- CVE-2026-45377Średnie
Platforma Decidim przed wersjami 0.30.9, 0.31.5 i 0.32.0.rc2 zawiera podatność. Proces pobierania danych (download_your_data) wymaga uwierzytelnienia, ale wygenerowany URL przekierowania do pliku Active Storage może być odtworzony bez uwierzytelnienia przez każdego, kto go zdobędzie.
- CVE-2026-45376Średnie
Platforma Decidim przed wersjami 0.30.9, 0.31.5 i 0.32.0.rc2 zawiera podatność. Zapytanie GET /admin/organization/users search interpoluje parametr params[:term] do wyrażenia Arel.sql ORDER BY similarity przed sanityzacją, co pozwala uwierzytelnionemu administratorowi organizacji na wykonanie ślepych wyrażeń PostgreSQL i inferowanie danych przez różnice czasowe.
- CVE-2026-45330Średnie
Platforma Decidim przed wersjami 0.30.9, 0.31.5 i 0.32.0.rc2 zawiera podatność. Kontrolery administracyjne weryfikacji dokumentów tożsamości ładują rekordy Authorization na podstawie surowego identyfikatora bez potwierdzenia własności current_organization, co pozwala administratorowi z jednej instancji na przeglądanie, zatwierdzanie lub odrzucanie żądań dokumentów tożsamości innej instancji.
- CVE-2026-45086Średnie
W Decidim w wersjach od 0.31.1 do 0.31.4 oraz 0.32.0.rc1, zwykły uczestnik może uzyskać dostęp do edytora kwestionariuszy demograficznych pod ścieżką /admin/demographics/questions/edit_questions bez wymaganej autoryzacji administratora. Brakuje sprawdzenia uprawnień administratora dla tej trasy.
Oryginalny opis (angielski, źródło NVD)
Decidim is a participatory democracy framework. Prior to 0.30.9, from 0.31.0 before 0.31.5, and in 0.32.0.rc1 before 0.32.0.rc2, the identity-document verification admin UI embeds verification_attachment blobs through reusable signed Active Storage disk URLs, allowing anyone who obtains a URL to download the scanned document without an authenticated Decidim session until the signature expires. Verification-document images are rendered with variant_url(...), which produces signed /rails/active_storage/disk/... links instead of routing the file through an authorization-checking controller. Because Decidim configures Active Storage service URLs to remain valid for seven days, the URL itself becomes the credential for that period. The affected files are verification_attachment blobs on Decidim::Authorization, and the admin review pages embed those signed URLs directly into the HTML for pending and confirmation views. This issue is fixed in versions 0.30.9, 0.31.5, and 0.32.0.rc2.

