CVE-2026-54596
WysokieCVSS 8.1Streszczenie
W systemie ITFlow przed wersją 26.07 uwierzytelniony użytkownik z uprawnieniami Technika lub wyższymi może wstrzyknąć kod SQL poprzez parametr frequency w pliku agent/post/recurring_invoice.php. Parametr jest wprawdzie poddawany sanitizacji, ale wstawiany bez cudzysłowów do DATE_ADD, co pozwala na eskalację wstrzyknięcia i ujawnienie danych z bazy.
Ocena ryzyka
Może dojść do ujawnienia hashy haseł, danych uwierzytelniających SMTP, rekordów użytkowników oraz metadanych bazy danych, a także do modyfikacji pól i przejęcia konta administracyjnego po złamaniu hasła.
Rekomendacja
Zaktualizuj ITFlow do wersji 26.07 lub nowszej, a do czasu aktualizacji ogranicz dostęp do funkcji faktur cyklicznych wyłącznie do zaufanych użytkowników.
Inne podatności w ITFlow
Zobacz wszystkie- CVE-2026-54597Wysokie
ITFlow, system dokumentacji IT, zgłoszeń i księgowości dla małych MSP, w wersjach przed 26.07 pozwala uwierzytelnionemu użytkownikowi z uprawnieniem zapisu module_support i dostępem do rekordu poświadczeń na czasową ślepą iniekcję SQL poprzez parametr expires w handlerze share_generate_link w agent/ajax.php. Parametr expires jest wstawiany bez cudzysłowów do wyrażenia MySQL INTERVAL, co pozwala na wykonanie warunkowych zapytań do bazy.
- CVE-2026-47755Średnie
ITFlow przed wersją 26.05 zawiera podatność, która pozwala uwierzytelnionemu agentowi o niskich uprawnieniach na odczytanie poświadczeń w postaci jawnego tekstu i sekretów TOTP należących do innego klienta. Wystarczy bezpośrednie żądanie do modalu edycji poświadczeń z dowolnym credential_id. Punkt końcowy nie wymusza zakresowania klienta ani autoryzacji na poziomie obiektu przed załadowaniem i odszyfrowaniem rekordu.
Oryginalny opis (angielski, źródło NVD)
ITFlow provides an IT documentation, ticketing and accounting system for small managed service providers. Prior to version 26.07, an authenticated Technician or higher with access to at least one client invoice can inject SQL through the frequency parameter handled by agent/post/recurring_invoice.php. The handler passes recurring_invoice_frequency through sanitizeInput but interpolates it unquoted into DATE_ADD, allowing SQL syntax to escape the interval expression, assign additional INSERT columns, store subquery results in recurring_invoice_note, and expose those results through agent/recurring_invoice.php. The persisted recurring_invoice_frequency can execute again when Force Recurring uses it in a later UPDATE, allowing another legitimate user to trigger the second-order injection. This can expose password hashes, SMTP credentials, user records, and database metadata, modify database fields, and enable administrative takeover after credential cracking. This issue is fixed in version 26.07.

