FOSSBilling w wersjach od 0.5.4 do wcześniejszych niż 0.8.0 zawiera krytyczną podatność polegającą na pominięciu autoryzacji w obsłudze ról API. Atakujący bez żadnych poświadczeń może uzyskać dostęp do uprzywilejowanych endpointów administracyjnych `/api/system/*`.
▸ Pokaż oryginał (EN)
FOSSBilling is a free, open-source billing and client management system. Starting in version 0.5.4 and prior to version 0.8.0, an authorization bypass in the API role handling allows unauthenticated access to privileged `/api/system/*` endpoints. Because `system` resolves to the cron admin identity, attackers can invoke admin API methods without valid credentials, session, or CSRF token. Version 0.8.0 patches the issue. Some workarounds are available. Block external access to `/api/system/*` at reverse proxy/WAF, restrict API access by trusted source IPs only (`api.allowed_ips`), rotate all admin/client API tokens immediately, invalidate active sessions and reset high-privilege credentials, and/or review API request logs for suspicious `/api/system/` access and treat as potential incident.
Mechanizm obsługi ról w API nieprawidłowo rozwiązuje tożsamość `system`, przypisując jej uprawnienia administratora cron bez weryfikacji sesji, tokenu CSRF ani poświadczeń. Oznacza to, że nieuwierzytelniony atakujący może bezpośrednio wywoływać metody API zarezerwowane dla administratorów, korzystając z endpointów `/api/system/*`. Podatność klasyfikowana jest jako brak uwierzytelnienia (CWE-306), brak autoryzacji (CWE-862, CWE-863) oraz ujawnienie informacji (CWE-200).
Atakujący może wykonywać dowolne uprzywilejowane operacje administracyjne bez żadnych poświadczeń, co może prowadzić do całkowitego przejęcia systemu, ujawnienia danych klientów i modyfikacji konfiguracji.
Należy zaktualizować FOSSBilling do wersji 0.8.0, która zawiera poprawkę. Do czasu aktualizacji zaleca się: zablokowanie zewnętrznego dostępu do `/api/system/*` na poziomie reverse proxy lub WAF, ograniczenie dostępu do API wyłącznie do zaufanych adresów IP (`api.allowed_ips`), natychmiastową rotację wszystkich tokenów API administratorów i klientów, unieważnienie aktywnych sesji i reset danych uwierzytelniających dla kont z wysokimi uprawnieniami oraz przegląd logów żądań API pod kątem podejrzanych wywołań `/api/system/`.
FOSSBilling w wersjach od 0.5.4 do wcześniejszych niż 0.8.0
Mimo braku wpisu w CISA KEV, dostępne jest publiczne opracowanie techniczne podatności (VulnCheck blog), które może ułatwić opracowanie exploita. Wersja referencji wskazuje również na potencjalne powiązanie z podatnością SSTI/RCE w tym samym produkcie (GHSA-78x5-c8gw-8279).
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X