CVE-2026-67612
ŚrednieCVSS 4.8Streszczenie
OpenEMR do wersji 8.2.0 zawiera podatność na trwałe XSS w systemie szablonów portalu pacjenta. Uwierzytelnieni administratorzy mogą wstrzykiwać dowolny HTML i JavaScript poprzez zapis złośliwych treści w trybie zapisu szablonu, który filtruje tylko dosłowne znaczniki PHP. Brak kodowania wyjścia w punkcie końcowym pobierania szablonu oraz brak atrybutów HttpOnly w ciasteczkach umożliwia przechwycenie tokenów sesji poprzez document.cookie.
Ocena ryzyka
Atakujący może przejąć sesję dowolnego administratora, klinicysty lub pacjenta portalu, który wyświetli zainfekowany szablon, co prowadzi do pełnego przejęcia konta i dostępu do wrażliwych danych medycznych.
Rekomendacja
Należy zaktualizować OpenEMR do wersji 8.2.1 lub nowszej, a także wdrożyć odpowiednie kodowanie wyjścia i atrybuty HttpOnly dla ciasteczek sesyjnych.
Inne podatności w OpenEMR
Zobacz wszystkie- CVE-2026-40508Średnie
OpenEMR przed wersją 8.3.0 zawiera podatność na trwały cross-site scripting (XSS) w imporcie szablonów portalu pacjenta. Uwierzytelnieni atakujący z uprawnieniami Forms Administration mogą przesyłać pliki szablonów zawierające dowolny HTML lub JavaScript. Złośliwe skrypty są przechowywane bez sanityzacji i wykonują się w przeglądarce każdego innego użytkownika Forms Administration, który przegląda szablon w edytorze HTML.
- CVE-2026-67610Wysokie
OpenEMR do wersji 8.2.0 zawiera podatność nieprawidłowego uwierzytelniania w punkcie końcowym dynamicznej rejestracji klienta OAuth2, która pozwala nieuwierzytelnionym atakującym na zarejestrowanie złośliwego klienta z zakresami FHIR na poziomie systemu poprzez dostarczenie samodzielnie wygenerowanej pary kluczy RSA w polu jwks. Po zatwierdzeniu zarejestrowanego klienta przez administratora, atakujący mogą użyć grantu client_credentials z samopodpisanym JWT do uzyskania tokenów dostępu dających dostęp do odczytu wszystkich zasobów FHIR wszystkich pacjentów w systemie.
- CVE-2023-54347Wysokie
OpenEMR w wersji 7.0.1 zawiera podatność na atak typu brute force w procesie uwierzytelniania, co pozwala atakującym na ominięcie zabezpieczeń ograniczających liczbę prób logowania. Atakujący mogą wysyłać powtarzające się próby logowania do głównego punktu logowania, testując kombinacje nazw użytkowników i haseł.
- CVE-2017-1000241Wysokie
Aplikacja OpenEMR w wersjach 5.0.0, 5.0.1-dev i wcześniejszych jest podatna na lukę umożliwiającą eskalację uprawnień w pionie. Luka ta pozwala uwierzytelnionym użytkownikom niebędącym administratorami na przeglądanie i modyfikowanie informacji dostępnych tylko dla administratorów.
- CVE-2017-16540Wysokie
OpenEMR w wersjach przed 5.0.0 Patch 5 umożliwia nieautoryzowane zdalne kopiowanie bazy danych, ponieważ plik setup.php udostępnia funkcjonalność klonowania istniejącej witryny OpenEMR na dowolny serwer MySQL kontrolowany przez atakującego za pomocą spreparowanego parametru stanu.
- CVE-2017-9380Wysokie
OpenEMR w wersji 5.0.0 i wcześniejszych pozwala użytkownikom o niskich uprawnieniach na przesyłanie plików niebezpiecznych typów, co może prowadzić do wykonania dowolnego kodu w kontekście podatnej aplikacji.
- CVE-2026-39932Krytyczne
OpenEMR do wersji 8.2.0 zawiera lukę zdalnego wykonania kodu w komponencie drzewa kategorii dokumentów (library/classes/Tree.class.php), która pozwala uwierzytelnionym administratorom na wykonanie dowolnych poleceń systemu operacyjnego poprzez wstrzyknięcie ładunków PHP do tabeli kategorii bazy danych. Atakujący mogą połączyć dowolne wykonanie SQL, aby zmienić typ kolumny id na VARCHAR i wstawić złośliwy ładunek PHP, który jest następnie wykonywany przez niesanitizowane wywołanie eval() przy każdym uruchomieniu CategoryTree, w tym na stronach nieuwierzytelnionych i o niskich uprawnieniach, co skutkuje wykonaniem poleceń jako użytkownik serwera WWW.
- CVE-2026-76614Średnie
OpenEMR przed wersją 8.3.0 zawiera podatność na przechodzenie po ścieżkach w funkcji przywracania archiwum EDI. Parametr archrestore_sel jest przekazywany do procedury przywracania bez sanityzacji, a różne komunikaty odpowiedzi ujawniają, czy ścieżka istnieje. Uwierzytelniony użytkownik z uprawnieniami EOB Data Entry może badać dowolne ścieżki na serwerze.
- CVE-2026-40509Średnie
OpenEMR przed wersją 8.3.0 zawiera podatność na cross-site request forgery (CSRF) w przeglądarce DICOM. Parametr GET web_path w stronie przeglądarki DICOM jest osadzany jako URL bez walidacji względem oczekiwanych formatów ścieżek. Atakujący może stworzyć URL, który powoduje, że uwierzytelniony użytkownik z uprawnieniami Patients - Documents wykonuje uwierzytelnione żądania do dowolnych endpointów OpenEMR, umożliwiając wymuszone wylogowanie i inne zmiany stanu.
- CVE-2026-40507Średnie
OpenEMR przed wersją 8.3.0 zawiera podatność na odbity cross-site scripting (XSS) w imporcie szablonów portalu pacjenta. Parametr GET templateHtml jest odzwierciedlany w odpowiedzi strony bez sanityzacji. Atakujący może stworzyć URL, który wykonuje dowolny JavaScript w przeglądarce każdego uwierzytelnionego użytkownika z uprawnieniami Forms Administration, który odwiedzi link, umożliwiając przejęcie sesji.
Oryginalny opis (angielski, źródło NVD)
OpenEMR through 8.2.0 contains a stored cross-site scripting vulnerability in the patient portal template system that allows authenticated administrators to inject arbitrary HTML and JavaScript by storing malicious payloads through the template save mode, which only filters literal PHP open tags. Attackers can exploit the lack of output encoding at the template retrieval endpoint combined with missing HttpOnly cookie attributes to exfiltrate session tokens via document.cookie access, enabling full session hijacking of any admin, clinician, or portal patient who views a poisoned template.

