Podatności OpenEMR
15 znanych podatności CVE w OpenEMR, przetłumaczonych i ocenionych.
- 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-67612Średnie
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.
- 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.
- CVE-2026-40506Średnie
OpenEMR przed wersją 8.2.0 zawiera podatność na path traversal w interfejsie standard_tables_manage.php, gdzie parametr db GET jest przekazywany bez walidacji do temp_dir_cleanup(), który łączy wartość ze ścieżką katalogu tymczasowego PHP i rekurencyjnie usuwa wynikowy katalog. Atakujący może dostarczyć sekwencję traversal w parametrze db, aby rozwiązać ścieżkę poza zamierzonym katalogiem tymczasowym, a łącząc to z otwartym przekierowaniem w dicom_frame.php, nieuwierzytelniony atakujący może dostarczyć spreparowany URL, który wyzwala dowolne rekurencyjne usuwanie katalogów w sesji uwierzytelnionego Superusera.
- CVE-2026-67611Wysokie
OpenEMR do wersji 8.2.0 zawiera podatność umożliwiającą ominięcie uwierzytelniania, która pozwala atakującym z prawidłowymi danymi logowania na ominięcie uwierzytelniania wieloskładnikowego poprzez wykorzystanie odsłoniętego przepływu grantu hasła OAuth2 przez nieuwierzytelniony punkt końcowy rejestracji klienta. Atakujący mogą zarejestrować klienta OAuth2 i użyć grantu hasła do uzyskania tokena dostępu API, omijając normalne uwierzytelnianie interfejsu webowego i wszelkie wymuszone kontrole uwierzytelniania wieloskładnikowego.
- CVE-2026-39931Wysokie
OpenEMR do wersji 8.2.0 zawiera podatność na iniekcję SQL w funkcji importu konfiguracji kopii zapasowej, która pozwala administratorom z uprawnieniami admin lub super ACL na wykonanie dowolnych instrukcji DDL i DML przeciwko bazie danych aplikacji poprzez przesłanie spreparowanego pliku SQL przy parametrze form_step=202 w backup.php. Atakujący mogą wykorzystać niefiltrowane wywołanie shell_exec klienta wiersza poleceń mysql do wyodrębnienia skrótów haseł, modyfikacji tabel kontroli dostępu, wstrzyknięcia kont zapasowych, tworzenia trwałych wyzwalaczy lub procedur składowanych oraz zapisu dowolnych plików do systemu plików, jeśli skonfigurowane są uprawnienia FILE MySQL i liberalne ustawienia secure_file_priv.
- CVE-2026-46518Wysokie
OpenEMR przed wersją 8.0.0.1 zawiera podatność XSS w funkcji drukowania recept CSS/HTML. Użytkownik portalu pacjenta może wstrzyknąć złośliwy JavaScript do pól demograficznych, który wykona się w sesji klinicysty, umożliwiając przejęcie sesji i wykonanie działań jako klinicysta.

