Katalog CVE

CVE-2026-71238

KrytyczneCVSS 9.1
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

DjangoCRM ma na stałe zakodowany klucz SECRET_KEY w pliku webcrm/settings.py, zamiast czytać go ze zmiennej środowiskowej. Ponieważ klucz 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, co prowadzi do pełnego przejęcia konta. Repozytorium ma również domyślnie włączony DEBUG=True, co powoduje wyciek danych uwierzytelniających bazy danych, danych e-mail, danych OAuth i wewnętrznych ścieżek plików na stronach błędów.

Ocena ryzyka

Publicznie dostępny klucz SECRET_KEY umożliwia atakującemu przejęcie kont użytkowników, w tym administratorów, oraz dostęp do wrażliwych danych. Włączony tryb debugowania dodatkowo ujawnia poufne informacje systemowe.

Rekomendacja

Należy natychmiast zmienić SECRET_KEY na losową wartość przechowywaną w zmiennej środowiskowej, wyłączyć DEBUG w środowisku produkcyjnym oraz obrócić wszystkie istniejące tokeny i sesje.

Oryginalny opis (angielski, źródło NVD)

DjangoCRM ships with its Django SECRET_KEY hardcoded directly in the committed webcrm/settings.py rather than read from an environment variable. Since this key is used for session signing, CSRF token generation, and password reset tokens, anyone who reads the public repository can forge valid session cookies (including for the superadmin account), forge CSRF tokens, and forge password reset tokens, achieving full account takeover. The repository also ships with DEBUG=True as the default, causing error pages to leak database credentials, email credentials, OAuth data, and internal file paths.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS