CVE-2026-71240
ŚrednieCVSS 4.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
W DjangoCRM widok toggle_default_sorting jest jedyną trasą w common/urls.py, która nie wymaga logowania ani uprawnień personelu. Przekierowuje na podany przez użytkownika parametr next_url po sprawdzeniu tylko secure_url, które blokuje tylko przekierowania między domenami, ale pozwala na dowolną ścieżkę w obrębie tej samej domeny bez uwierzytelnienia.
Ocena ryzyka
Nieuwierzytelniony atakujący może wykorzystać tę podatność do otwartego przekierowania lub przeprowadzenia ataków phishingowych w obrębie domeny.
Rekomendacja
Dodaj wymóg uwierzytelnienia do widoku toggle_default_sorting oraz ogranicz dozwolone ścieżki przekierowań.
Inne podatności w DjangoCRM
Zobacz wszystkie- CVE-2026-71238Krytyczne
DjangoCRM ma twardo zakodowany klucz SECRET_KEY Django bezpośrednio w pliku webcrm/settings.py, zamiast odczytywać go ze zmiennej środowiskowej. Ponieważ klucz ten jest używany do podpisywania sesji, generowania tokenów CSRF i tokenów resetowania hasła, każdy, kto przeczyta publiczne repozytorium, może sfałszować ważne ciasteczka sesji (w tym dla konta superadmina), tokeny CSRF i tokeny resetowania hasła, osiągając pełne przejęcie konta.
- CVE-2026-71239Wysokie
Moduł massmail w DjangoCRM renderuje kontrolowane przez użytkownika pola EmlMessage (subject, content) przez konstruktor Template Django bez sanityzacji, w co najmniej trzech miejscach: message_previews.py, email_creators.py i helpers.py.
Oryginalny opis (angielski, źródło NVD)
DjangoCRM's toggle_default_sorting view is the only route in common/urls.py that is not wrapped in login_required or staff_member_required, and it redirects to a caller-supplied next_url GET parameter after only checking secure_url(next_url), which merely verifies the target host matches the current site's domain (blocking only cross-domain redirects) while allowing any same-site path with no authentication required to reach the view.

