CVE-2026-9021
ŚrednieCVSS 5.3Streszczenie
Wtyczka Easy Invoice dla WordPressa do wersji 2.1.19 włącznie jest podatna na brak autoryzacji. Rejestruje ona akcje AJAX easy_invoice_accept_quote i easy_invoice_decline_quote przez hooki wp_ajax_nopriv_, polegając wyłącznie na nonce powiązanym z wyceną, który jest osadzony w publicznie dostępnym szablonie pojedynczej wyceny. W połączeniu z domyślnie wyłączoną opcją Pro (easy_invoice_pro_restrict_quote_to_client) umożliwia to nieuwierzytelnionym atakującym akceptowanie lub odrzucanie dowolnych opublikowanych wycen, a w zależności od skonfigurowanej akcji akceptacji, automatyczne przekształcanie ich w faktury (nawet z wysyłką e-mailem do klienta) poprzez pozyskanie nonce z publicznej strony wyceny i przesłanie go do admin-ajax.
Ocena ryzyka
Organizacja narażona jest na nieautoryzowane modyfikacje wycen, co może prowadzić do fałszywych faktur, błędów księgowych oraz naruszenia zaufania klientów. Atakujący może bez uwierzytelnienia akceptować lub odrzucać wyceny, a w niektórych konfiguracjach generować i wysyłać faktury, powodując straty finansowe i reputacyjne.
Rekomendacja
Należy natychmiast zaktualizować wtyczkę Easy Invoice do najnowszej dostępnej wersji. Jeśli aktualizacja nie jest możliwa, włącz opcję easy_invoice_pro_restrict_quote_to_client w ustawieniach Pro, aby ograniczyć dostęp do wycen tylko do zalogowanych klientów.
Inne podatności w Easy Invoice
Zobacz wszystkie- CVE-2026-66676Średnie
Podatność nieuwierzytelnionego złamania kontroli dostępu (Broken Access Control) w wtyczce Easy Invoice w wersjach do 2.3.8 włącznie. Niezalogowani użytkownicy mogą uzyskać dostęp do funkcji faktur i zarządzania, które powinny być chronione.
- CVE-2026-48836Krytyczne
W wersjach Easy Invoice <= 2.1.19 występuje podatność na zdalne wykonanie kodu (RCE) bez uwierzytelnienia.
Oryginalny opis (angielski, źródło NVD)
The Easy Invoice plugin for WordPress is vulnerable to Missing Authorization in versions up to, and including, 2.1.19. This is due to the plugin registering the easy_invoice_accept_quote and easy_invoice_decline_quote AJAX actions via wp_ajax_nopriv_ hooks and relying solely on a quote-scoped nonce that is rendered into the publicly accessible single quote template, combined with an ownership check that is gated behind an off-by-default Pro option (easy_invoice_pro_restrict_quote_to_client). This makes it possible for unauthenticated attackers to accept or decline arbitrary published quotes — and, depending on the configured accept action, automatically convert them into invoices (and even email them to the client) — by harvesting the per-quote nonce from the public quote page and submitting it to admin-ajax.

