Összefoglaló
Az OpenEMR több sérülékenységét jelentették, amiket kihasználva a rosszindulatú felhasználók SQL befecskendezéses (SQL injection) támadásokat indíthatnak, illetve a támadók cross-site scripting (XSS/CSS) támadásokat hajthatnak végre, valamint feltörhetik a sérülékeny rendszert.
Leírás
- A library/openflashchart/php-ofc-library/ofc_upload_image.php script lehetővé teszi, hogy a webroot könyvtáron belüli mappákba tetszőleges kiterjesztésű állományokat lehessen feltölteni. Ezt kihasználva tetszőleges PHP kódot lehet végrehajtani egy káros tartalmú PHP script feltöltésével.
- Az interface/main/calendar/index.php részére a “provider_id” és “pc_category” GET paraméterekkel átadott bemeneti adatok (amikor a “module” “PostCalendar” és a “func” “search” értékre van állítva) nem megfelelően vannak megtisztítva, mielőtt SQL lekérdezésekben felhasználásra kerülnének. Ezt kihasználva módosítani lehet az SQL lekérdezéseket tetszőleges SQL parancsok befecskendezésével.
- Az interface/reports/chart_location_activity.php részére a “form_patient_id” GET paraméterrel átadott bemeneti adatok nem megfelelően vannak megtisztítva, mielőtt SQL lekérdezésekben felhasználásra kerülnének. Ezt kihasználva módosítani lehet az SQL lekérdezéseket tetszőleges SQL parancsok befecskendezésével.
- Az interface/main/calendar/index.php részére a “tplview”, “pc_category” és a “pc_topic” GET paraméterekkel átadott bemeneti adatok nem megfelelően vannak megtisztítva, mielőtt a felhasználó számra visszaadásra kerülnének. Ezt kihasználva, tetszőleges HTML és script kódot lehet futtatni a felhasználó böngészőjének munkamenetében az érintett oldal vonatkozásában.
- Az interface/main/messages/messages.php részére a “noteid” POST paraméterrel átadott bemeneti adat nem megfelelően van megtisztítva (amikor a “task” “add” értékre van állítva), mielőtt a felhasználó számára hibaüzenetben megjelenítésre kerülne. Ezt kihasználva, tetszőleges HTML és script kódot lehet futtatni a felhasználó böngészőjének munkamenetében az érintett oldal vonatkozásában.
- Az interface/main/messages/messages.php részére a “sortby”, “sortorder” és “begin” GET paraméterekkel átadott bemeneti adatok nem megfelelően vannak megtisztítva, mielőtt a felhasználó számra visszaadásra kerülnének. Ezt kihasználva, tetszőleges HTML és script kódot lehet futtatni a felhasználó böngészőjének munkamenetében az érintett oldal vonatkozásában.
- Az interface/main/messages/messages.php részére a “sortby”, “sortorder” és “begin GET paraméterekkel átadott bemeneti adatok nem megfelelően vannak megtisztítva, mielőtt SQL lekérdezésekben felhasználásra kerülnének. Ezt kihasználva módosítani lehet az SQL lekérdezéseket tetszőleges SQL parancsok befecskendezésével.
A sérülékenységeket a 4.1.1 verzióban jelentették, de egyéb kiadások is érintettek lehetnek.
Megoldás
IsmeretlenTámadás típusa
Input manipulation (Bemenet módosítás)Szükséges hozzáférés
Remote/Network (Távoli/hálózat)Hivatkozások
SECUNIA 52145
Egyéb referencia: www.zeroscience.mk
Egyéb referencia: packetstormsecurity.org
