Katalog CVE

CVE-2026-78204

ŚrednieCVSS 5.4
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.22%

Percentyl 13 - wyżej niż 13% wszystkich znanych CVE

Streszczenie

Ghostwriter do wersji 7.2.6 nie stosuje autoryzacji per-obiekt na endpointach lintowania szablonów raportów. RoleBasedAccessControlMixin.test_func zwraca tylko request.user.is_active, chyba że widok to nadpisze, a ani endpoint lintujący szablon raportu, ani endpoint zwracający zapisane wyniki lintowania nie nadpisują tej metody. Każde uwierzytelnione konto może lintować dowolny szablon, nadpisując jego zapisany wynik lintowania, oraz czytać zwrócone wyniki, które ujawniają nazwy zmiennych i błędy silnika szablonów, co ujawnia ich strukturę. To odrębna luka od ścieżki podmiany szablonu: tamten endpoint autoryzuje raport, ale pomija sprawdzenie per-szablon, podczas gdy te endpointy pomijają autoryzację całkowicie i pozostają niezafiksowane.

Ocena ryzyka

Uwierzytelniony użytkownik może uzyskać dostęp do struktury szablonów raportów, co może ujawnić wrażliwe informacje o konfiguracji lub logice aplikacji. Może również nadpisać wyniki lintowania, co może prowadzić do manipulacji danymi.

Rekomendacja

Zaleca się natychmiastowe zaktualizowanie Ghostwriter do wersji, która zawiera poprawkę, jeśli jest dostępna. Jeśli nie, należy ręcznie dodać autoryzację per-obiekt do tych endpointów lub ograniczyć dostęp do nich.

Inne podatności w Ghostwriter

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

Ghostwriter through 7.2.6 does not apply per-object authorization on its report template lint endpoints. RoleBasedAccessControlMixin.test_func returns only request.user.is_active unless a view overrides it, and neither the endpoint that lints a report template nor the endpoint that returns stored lint results provides an override, so each resolves a ReportTemplate from a caller-supplied primary key with no ownership or client-scope check. Any authenticated account can therefore lint an arbitrary template, which overwrites that template's stored lint result, and can read the returned findings, which enumerate the template's variable names and template-engine errors and so disclose its structure. This is distinct from the template swap path: that endpoint authorizes the report but omits the per-template check, whereas these endpoints omit authorization entirely and remain unfixed.

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