CVE-2026-55381
WysokieCVSS 7.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 21 - wyżej niż 21% wszystkich znanych CVE
Streszczenie
W InvoiceShelf przed wersją 2.4.0 endpoint POST /api/v1/estimates/{estimate}/convert-to-invoice autoryzuje tylko zdolność create-invoice i nie autoryzuje dostępu do powiązanej wyceny. Uwierzytelniony użytkownik może skopiować pozycje, ceny, sumy, podatki, notatki, walutę i dane klienta innej firmy do faktury w swojej firmie.
Ocena ryzyka
Atakujący może uzyskać dostęp do poufnych danych innej firmy i przenieść je do własnej faktury, co prowadzi do naruszenia poufności i potencjalnych oszustw. Może również zmienić lub usunąć oryginalną wycenę ofiary.
Rekomendacja
Zaktualizuj InvoiceShelf do wersji 2.4.0 lub nowszej. Upewnij się, że endpoint autoryzuje dostęp do wyceny na podstawie company_id.
Inne podatności w InvoiceShelf
Zobacz wszystkie- CVE-2026-55387Wysokie
W InvoiceShelf w wersji 2.3.3 i wcześniejszych walidacja żądań masowego usuwania akceptuje identyfikatory rekordów bez konsekwentnego powiązania ich z company_id uwierzytelnionego użytkownika. Uwierzytelniony użytkownik może przesłać identyfikator innej firmy i usunąć rekordy międzyfirmowe.
- CVE-2026-55386Wysokie
W InvoiceShelf przed wersją 2.4.0 parametr orderByField przekazywany przez uwierzytelnionego użytkownika jest używany w wywołaniach orderBy w Invoice::scopeApplyFilters bez ograniczenia do identyfikatorów kolumn. Spreparowane wyrażenie SQL może trafić do klauzuli ORDER BY, umożliwiając ślepą ekstrakcję informacji z bazy danych.
- CVE-2026-55385Średnie
W InvoiceShelf przed wersją 2.4.0 plik PDFConfigurationRequest.php waliduje ustawienie gotenberg_host kontrolowane przez właściciela jedynie jako poprawny składniowo URL. GotenbergPDFDriver::loadView wysyła następnie żądanie HTTP multipart zawierające wyrenderowany HTML faktury, wyceny lub płatności jako document.html do tego hosta bez odrzucania adresów prywatnych, loopback, link-local lub zarezerwowanych.
- CVE-2026-55384Średnie
W InvoiceShelf przed wersją 2.4.0 ścieżki tworzenia faktur, wycen i faktur cyklicznych przyjmują dostarczone przez klienta wartości total, sub_total, tax, discount_val i due_amount bez weryfikacji, czy odpowiadają przesłanym pozycjom. Uwierzytelniony użytkownik może utrwalić zmanipulowane sumy finansowe przez InvoicesRequest::getInvoicePayload oraz odpowiednie handlery EstimatesRequest i RecurringInvoiceRequest.
- CVE-2026-55383Wysokie
W InvoiceShelf przed wersją 2.4.0 publiczne trasy faktur, wycen i płatności klienta używają numerycznego mailable_id z tokenu EmailLog bez weryfikacji mailable_type, a handlery JSON nie wymuszają EmailLog::isExpired. Token wydany dla jednego typu dokumentu może ujawnić dokument innej firmy, a wygasły token może pozostać ważny na trasach JSON.
- CVE-2026-55382Wysokie
W InvoiceShelf przed wersją 2.4.0 metody NotesController::show, update i destroy autoryzują tylko ogólną zdolność view notes lub manage notes i nie przekazują powiązanej z trasą notatki do NotePolicy, więc nie sprawdzają company_id docelowej notatki. Uwierzytelniony użytkownik personelu może odczytać, zmodyfikować lub usunąć szablony notatek innej firmy.
- CVE-2026-55610Wysokie
InvoiceShelf przed wersją 2.4.1 w instalacjach wielofirmowych pozwala właścicielowi jednej firmy na odczyt i nadpisanie kont użytkowników w innych firmach. Podatność wynika z braku weryfikacji przynależności docelowego użytkownika do firmy właściciela, co umożliwia przejęcie konta.
- CVE-2026-34367Wysokie
InvoiceShelf przed wersją 2.2.0 ma podatność SSRF w module generowania faktur PDF. HTML dostarczony przez użytkownika w polu Notes jest przekazywany bez sanityzacji do biblioteki Dompdf, która pobiera zdalne zasoby, co może być wykorzystane przez punkty końcowe podglądu PDF i wysyłki e-mail.
- CVE-2026-34366Wysokie
InvoiceShelf przed wersją 2.2.0 zawiera podatność SSRF w module generowania paragonów PDF. HTML dostarczony przez użytkownika w polu Notes jest przekazywany bez sanityzacji do biblioteki Dompdf, która pobiera zdalne zasoby, co umożliwia atak SSRF.
- CVE-2026-34365Wysokie
InvoiceShelf przed wersją 2.2.0 zawiera podatność SSRF w module generowania PDF dla kosztorysów. HTML w polu Notes jest przekazywany bez sanityzacji do Dompdf, który pobiera zdalne zasoby, co umożliwia atak SSRF.
Oryginalny opis (angielski, źródło NVD)
InvoiceShelf is an open-source web & mobile app that helps track expenses, payments and create professional invoices and estimates. Prior to version 2.4.0, POST /api/v1/estimates/{estimate}/convert-to-invoice in ConvertEstimateController authorizes only the caller's create-invoice ability and does not authorize access to the route-bound Estimate. Because route-model binding can resolve an estimate from any company, an authenticated user with create-invoice ability can copy another company's line items, prices, totals, taxes, notes, currency, and customer data into an invoice in the attacker's company. The victim company's configured conversion action reaches checkForEstimateConvertAction and can also change or delete the original estimate. This issue is fixed in version 2.4.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

