CVE-2026-12732
ŚrednieCVSS 6.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
Wtyczka LearnPress dla WordPressa jest podatna na trwałe ataki XSS poprzez atrybut shortcode 'class_wrapper_form' w wersjach do 4.4.0 włącznie. Atakujący z dostępem na poziomie współautora lub wyższym mogą wstrzykiwać dowolne skrypty, które wykonają się podczas przeglądania zainfekowanej strony.
Ocena ryzyka
Ryzyko polega na możliwości przejęcia sesji użytkowników, kradzieży danych lub rozpowszechniania złośliwego kodu w obrębie witryny WordPress, co może prowadzić do naruszenia bezpieczeństwa i reputacji organizacji.
Rekomendacja
Zaleca się natychmiastową aktualizację wtyczki LearnPress do wersji 4.4.1 lub nowszej, która zawiera poprawkę usuwającą podatność. Należy również ograniczyć uprawnienia użytkowników do niezbędnego minimum.
Inne podatności w LearnPress
Zobacz wszystkie- CVE-2026-75982Średnie
Wtyczka LearnPress dla WordPressa jest podatna na nieautoryzowaną modyfikację dowolnych opcji WordPressa w wersjach do 4.4.4 włącznie, poprzez akcję AJAX learnpress_create_page. Atakujący z uprawnieniami redaktora może zaktualizować dowolne opcje, takie jak users_can_register czy active_plugins, co może prowadzić do otwarcia publicznej rejestracji lub uszkodzenia strony.
- CVE-2026-12976Średnie
Wtyczka LearnPress dla WordPressa przed wersją 4.4.4 nie weryfikuje, czy użytkownik jest zapisany na kurs, zanim przetworzy żądania asystenta AI dotyczące treści lekcji tego kursu, umożliwiając każdemu uwierzytelnionemu użytkownikowi, takiemu jak subskrybent, uzyskanie materiałów z płatnych kursów, na które nie jest zapisany.
- CVE-2026-12970Wysokie
Wtyczka LearnPress dla WordPress przed wersją 4.4.1 nie zabezpiecza parametru wyszukiwania przed odbiciem w atrybucie HTML, co prowadzi do Refleksyjnego Cross-Site Scripting (XSS). Atakujący może wykorzystać tę podatność, aby wykonać złośliwy skrypt w przeglądarce zalogowanego instruktora lub administratora, który kliknie spreparowany link.
- CVE-2026-13765Wysokie
Wtyczka LearnPress dla WordPressa w wersjach do 4.4.1 włącznie zawiera podatność na ujawnienie wrażliwych informacji poprzez funkcję check_answer. Umożliwia ona nieuwierzytelnionym atakującym wyodrębnienie poprawnych odpowiedzi, pełnych list opcji, wyjaśnień oraz treści pytań dla dowolnego quizu na stronie, w tym pytań z płatnych kursów, do których atakujący nie ma dostępu.
- CVE-2026-11988Średnie
Wtyczka LearnPress dla WordPressa do wersji 4.3.9.1 włącznie zawiera podatność na niebezpieczne bezpośrednie odwołanie do obiektu (IDOR) poprzez parametr 'userId'. Uwierzytelniony atakujący z dostępem na poziomie subskrybenta lub wyższym może odczytać dane o postępach i ukończeniu kursów należące do instruktorów i administratorów.
- CVE-2026-8502Średnie
Wtyczka LearnPress dla WordPressa do wersji 4.3.6 włącznie ujawnia wrażliwe dane przez parametr 'return_type'. Niezalogowany atakujący może wyodrębnić hasła do chronionych kursów oraz treść, autora i nazwę nieopublikowanych wpisów.
- CVE-2026-48865Wysokie
Wtyczka LearnPress dla WordPressa jest podatna na odbity atak XSS z powodu nieprawidłowego neutralizowania danych wejściowych podczas generowania strony. Dotyczy wersji do 4.3.6.
- CVE-2026-4333Średnie
Wtyczka LearnPress – WordPress LMS Plugin jest podatna na trwałe XSS przez atrybut 'skin' shortcodu learn_press_courses w wersjach do 4.3.3 włącznie. Niedostateczne oczyszczanie i escapowanie atrybutu 'skin' pozwala uwierzytelnionym atakującym (od poziomu współautora) na wstrzyknięcie dowolnych skryptów.
Oryginalny opis (angielski, źródło NVD)
The LearnPress plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'class_wrapper_form' shortcode attribute in versions up to, and including, 4.4.0. This is due to insufficient input sanitization and output escaping in the FilterCourseTemplate::sections() method at line 98, where the attacker-controlled attribute is inserted into an HTML class attribute via sprintf('<form class="%s">', $class_wrapper_form) without esc_attr() escaping. The FilterCourseShortcode::render() handler does not apply shortcode_atts() filtering, so raw user attributes flow directly through do_action('learn-press/filter-courses/layout', $data) into the template. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

