ВАЖНО :Использование данной уязвимости незаконно!
В CMS WordPress обнаружили простую, но довольно-таки серьезную уязвимость, связанную с атакой типа DoS, которая позволит абсолютно любому юзеру привести web-сайт на WordPress в нерабочее состояние при помощи всего одной машины.
Т.к. WordPress Foundation отказались от исправления проблемы, она остается без патча и затрагивает практически все версии WordPress за последние 9 лет, включая версию WordPress 4.9.2.
Израильский исследователь в области безопасности, Barak Tawily, обнаружил данную уязвимость, которая заключается в том, что «load-scripts.php», встроенный скрипт в CMS WordPress, обрабатывает еще и пользовательские запросы.
По задумке разрабов, файл load-scripts.php предназначен для админов и создан, что бы повысить скорость загрузки и производительность, объединив несколько JacaScript файлов в один запрос.
Чтобы «load-scripts.php» мог работать на странице входа админа до входа в админ-панель, создатели WordPress не предусмотрели механизм аутентификации, что и дает в результате доступ к функции всем пользователям
В зависимости от того, какие модули или плагины вы установили, файл load-scripts.php вызывает необходимые файлы JavaScript и передает их наименования в параметр «load» разделяя их запятой
1 |
ПРИМЕР: https://your-wordpress-site.com/wp-admin/load-scripts.php?c=1&load=editor,common,user-profile,media-widgets,media-gallery |
Когда сайт загружается «load-scripts.php» ищет каждое имя JS- файла, которое указано в URL, все собирает в один файл и отправляет в браузер пользователю.
Как работает DoS атака на вордпресс

По словам Barak Tawily с помощью load-scripts.php можно вызвать все JavaScript-файлы которые возможно (181 скрипт) за один раз, передав их имена в url (пример на картинке). Это замедлит работу сайта, из-за высоких затрат со стороны процессора и памяти сервера.
«Существует четко определенный список ($ wp_scripts), который может быть запрошен пользователями как часть параметра load []. Если запрошенное значение существует, сервер выполнит необходимые операции чтения ввода-вывода», — говорит Tawily.
Конечно одного запроса будет недостаточно, чтобы «завалить» сайт, поэтому Tawily использовал сценарий написанный на python для создания PoC. Он создал doser.ру, который делает большое кол-во запросов одновременно, на один url используя как можно больше CPU сервера.
Таким образом, с несколькими ботами можно обрушить сайт на WordPress, используя данную уязвимость.
DoS атака в действии
Tawily сообщил о данной уязвимости разработчикам WordPress через платформу HackerOne, но компания не признала данную проблему и заявила, что эта ошибка вне контроля WordPress.
Для тех, кто не может позволить себе услуги защиты от атак, Tawily предложил пользователям WordPress forked version, в которой содержится фикс данной неуязвимости. Также, он предложил bash-сценарий, который исправит проблему в установленном WordPress
Подписывайтесь на наш канал в telegram и в соц. сетях, чтобы ничего не пропустить 😉
Ну ничосе!