Всему виной популярный плагин, расширяющий встроенный функционал.
LearnPress — это подключаемый модуль системы управления обучением (LMS), который позволяет веб-сайтам на WordPress легко создавать онлайн-курсы, уроки, викторины и тесты. Он предоставляет посетителям веб-сайта удобный интерфейс и не требует знаний программирования от разработчика.
Уязвимости в плагине, используемом на более чем 100 000 активных сайтов, были обнаружены специалистами Для просмотра ссылки Войди
Проблемы были устранены 20 декабря 2022 г. с выпуском LearnPress версии 4.2.0. Однако, согласно статистике WordPress.org, только 25% пользователей обновили плагин до последней версии. Это означает, что примерно 75 000 веб-сайтов до сих пор используют уязвимую версию LearnPress и подвержены атакам злоумышленников.
Активные версии LearnPress Первой уязвимостью, обнаруженной PatchStack, стала CVE-2022-47615 — уязвимость включения локальных файлов без проверки подлинности (LFI), которая позволяет хакерам отображать содержимое локальных файлов, хранящихся на веб-сервере. Это может привести к раскрытию учетных данных, токенов авторизации и ключей API, что приведет к дальнейшей компрометации.
Уязвимость обнаружена в фрагменте кода, обрабатывающем запросы API для веб-сайта, расположенном в функции list_courses, которая не проверяет должным образом определенные переменные ($template_pagination_path, $template_path и $template_path_item).
Вторая критический уязвимость, CVE-2022-45808 — неаутентифицированная [URL='/glossary//" class="glossary" data-content="SQL-инъекция (внедрение SQL-кода) – один из способов взлома сайтов и программ, работающих с базами данных, основанный на внедрении в запрос произвольного SQL-кода.
Внедрение SQL, в зависимости от типа используемой СУБД и условий внедрения, может дать возможность атакующему выполнить произвольный запрос к базе данных, а также получить возможность чтения и/или записи локальных файлов и выполнения произвольных команд на атакуемом сервере.
Атака типа внедрения SQL может быть возможна из-за некорректной обработки входных данных, используемых в SQL-запросах.
" data-html="true" data-original-title="SQL-инъекция" >SQL-инъекция[/URL] , которая может привести к раскрытию конфиденциальной информации, изменению данных и выполнению произвольного кода.
Эта уязвимость заключается в обработке SQL-запросов для веб-сайта, которая неправильно очищает и проверяет переменную «$filter» в параметрах запроса, что позволяет злоумышленнику вставить в нее вредоносный код.
Пример SQL-инъекции Третьей уязвимостью, затрагивающей более старые версии LearnPress, является CVE-2022-45820 — ошибка внедрения SQL-кода с проверкой подлинности в двух шорткодах плагина («learn_press_recent_courses» и «learn_press_featured_courses»), не позволяющая должным образом проверить и очистить ввод переменной «$ args».
Представители PatchStack уже предоставили PoC-эксплойт, демонстрирующий, как пользователь «Contributor» может инициировать SQL-инъекцию, используя специально созданный шорткод в черновике публикации. Реализовать уязвимость могут только пользователи с возможностью редактировать или создавать новую запись в блоге, что ограничивает риск её применения.
Разработчики LearnPress в последнем обновлении внедрили белый список и очистили уязвимые переменные, убрав возможность включать шаблоны в пользовательский ввод. Владельцам веб-сайтов, использующим LearnPress, рекомендуется либо обновиться до версии 4.2.0, либо временно отключить плагин, пока они не смогут применить доступное обновление для системы безопасности.
- Источник новости
- www.securitylab.ru