Универсальная SEO-уязвимость затрагивает +3 миллиона сайтов – SEO плагин все устранил!
Здравствуйте, уважаемые друзья и гости блога atready.ru! SEO плагин – All In One SEO исправил уязвимость SQL-инъекции, которая могла раскрывать конфиденциальную информацию из базы данных.
Исследователи безопасности из Jetpack обнаружили две серьезные уязвимости в плагине All In One SEO. Уязвимости могут позволить хакеру получить доступ к именам пользователей и паролям, а также выполнить эксплойты для удаленного выполнения кода.
Уязвимости зависят друг от друга, чтобы добиться успеха. Первый называется атакой повышения привилегий, которая позволяет пользователю с низким уровнем привилегий доступа к веб-сайту (например, подписчику) повысить уровень своих привилегий до уровня с большим количеством привилегий доступа (например, администратора веб-сайта).
Исследователи безопасности из Jetpack описывают уязвимость как серьезную и предупреждают о следующих последствиях:
«В случае эксплуатации уязвимость SQL Injection может предоставить злоумышленникам доступ к конфиденциальной информации из базы данных уязвимого сайта (например, к именам пользователей и хешированным паролям)».
Повышение привилегий с аутентификацией
Один из эксплойтов – это уязвимость Authenticated Privilege Escalation, которая использует WordPress REST API, позволяя злоумышленнику получить доступ к именам пользователей и паролям.
REST API – это способ, с помощью которого разработчики плагинов могут безопасно взаимодействовать с установкой WordPress, чтобы включить функции, которые не ставят под угрозу безопасность.
Эта уязвимость использует конечные точки WordPress REST API (URL-адреса, представляющие сообщения, и т. д.). Атаки на REST API становятся все более слабым местом безопасности WordPress.
Но это не вина WordPress, потому что REST API разработан с учетом требований безопасности.
Ошибка, если нужно указать пальцем, полностью лежит на плагинах.
В плагине All In One SEO проблема заключалась в проверках безопасности, которые проверяют, имел ли пользователь, обращающийся к конечной точке API, правильные учетные данные с правами.
Согласно Jetpack:
«Проверки привилегий, применяемые All In One SEO для защиты конечных точек REST API, содержали очень тонкую ошибку, которая могла предоставить пользователям с низкими привилегиями (например, подписчикам) доступ к каждой конечной точке, которую регистрирует плагин.
… Так как он не учитывает тот факт, что WordPress обрабатывает маршруты REST API как строки без учета регистра, изменение одного символа на верхний регистр полностью обойдет процедуру проверки привилегий».
Хм… Верно?
Проверка подлинности SQL-инъекций
Второй эксплойт – это SQL-инъекция с проверкой подлинности. Это зависит от того, что злоумышленник сначала получит некоторые учетные данные пользователя, даже такие низкие, как подписчик веб-сайта.
SQL-инъекция – это использование ввода с неожиданной серией кода или символов, которая затем активирует эксплойт, например, предоставление доступа.
Сайт некоммерческого проекта Open Web Application Security Project (OWASP) определяет SQL-инъекцию следующим образом:
- «Непредвиденные данные попадают в программу из ненадежного источника»
- «Данные используются для динамического создания SQL-запроса»
Jetpack отмечает, что уязвимость, связанная с повышением привилегий, позволяет злоумышленнику затем подключить атаку с использованием аутентифицированного SQL-инъекции.
«Хотя эта конечная точка не предназначалась для доступа пользователей с учетными записями с низким уровнем привилегий, вышеупомянутый вектор атаки с повышением привилегий позволил им воспользоваться этой уязвимостью».
Плагин SEO – Рекомендуется обновление
Эта уязвимость затрагивает версии с 4.0.0 по 4.1.5.2. Последняя версия на данный момент, 4.1.5.3, является самой безопасной версией для обновления. Исследователи безопасности Jetpack рекомендуют обновиться до последней версии. О том, что такое SQL-инъекция, Вы сможете прочесть на официальном сайте фонда OWASP, который профессионально занимается повышением безопасности программного обеспечения. Всем удачи и благополучия в новом 2022 году! До новых встреч!