Об уязвимости jQuery.min.php

В связи с тем, что библиотека jQuery стала одной из самых популярных библиотек JavaScript, взломщики то и дело прибегают к инъекциям фейковыми jQuery. Поэтому, если у вас возникают такие же проблемы, как и описанные в этой статье, то вашему сайту необходима очистка от вредоносных кодов.

Суть этой распространенной вредоносной инфекции состоит в том, что происходит инъекция поддельной jQuery в секцию «head» на сайтах WordPress и Joomla. Скрипт вводится непосредственно перед закрывающим тегом </head> и выглядит это следующим образом:

js-jquery-min-php-injection

Есть несколько интересных моментов, связанных с этим вредоносным кодом.

1. Несмотря на то, что вредоносный код заражает файлы PHP, сам он вводится в JavaScript. Взломщики решили не заморачиваться с ним. Вероятно, для того, чтобы сделать его менее заметным во время просмотра кода вручную.

2. После 10 секундного таймаута, JS код динамически вводит другой скрипт, который выглядит следующим образом:

jquery

infected-site.com – скомпрометированный сайт, на котором хакеры разместили свои вредоносные скрипты. Буквально каждый сайт с вредоносным JS кодом может быть повторно использован для размещения скрипта /js/jquery.min.php.

3. Как вы могли уже заметить, на скриншоте два одинаковых инъецированных скрипта. Это происходит довольно часто из-за бага во вредоносном инжекторе. По сути, он просто ищет тег </head> и вводит вредоносный код прямо перед ним. Он не проверяет, содержит ли уже этот файл вредоносный код.

Поскольку хакеры пытаются регулярно обновлять код для того, чтобы использовать новые домены или просто вновь заражать сайты, которые удалили вредоносный код, многие зараженные веб-страницы могут содержать более одного вредоносного скрипта – иногда даже больше 10. По этой же причине скрипт может появляться и в других неподходящих местах (например, внутри комментариев, которые содержат </head>).

4. Основными мишенями такой атаки являются сайты на WordPress и Joomla. Когда хакеры взламывают сайт, они запускают скрипт, который ищет все установки WordPress и Joomla во взломанном аккаунте, а затем внедряют вредоносный код JavaScript в файл header.php в каждой теме WordPress и в файл index.php в каждый шаблон Joomla (или любой другой файл, который имеет тег </head>). Для очистки вам просто нужно удалить вредоносный код из header.php (WP) или index.php (Joomla), или просто восстановить их из чистой резервной копии, а также проверить jquery.min.php в директории /js.

Для того, чтобы проверить инфицирован ли ваш сайт, можно воспользоваться бесплатным сканером от Sucuri SiteCheck.

Предотвращение повторных заражений

Следует помнить, что одного удаления вредоносного кода мало. Как уже упоминалось выше, хакеры регулярно пытаются обновить вредоносный код, поэтому проблема неизбежно вернется, если вы только не удалите все бэкдоры и не закроете дыры в безопасности. Первый бекдор хакеры загрузили после входа в WordPress, а затем создали еще, к примеру, с помощью загрузки какого-то плагина, либо при редактировании файла какой-то темы (обычно 404.php). После этого они использовали первый бэкдор для создания нескольких надежных бэкдоров в различных директориях взломанных сайтов.

Учитывая тот факт, что большинство WordPress сайтов находятся под постоянными брут-форс атаками, с помощью которых хакеры пытаются угадать пароли администратора, можно предположить, что пароли к WordPress были подобраны таким же способом. Таким образом, после удаления видимых частей инфекции, дабы предотвратить последующие заражения следует:

– изменить пароли для всех WordPress и Joomla сайтов;
– просмотреть сайты на предмет наличия вредоносных пользователей «Администратор»; помните, редко возникает необходимость иметь более одного пользователя «Администратор»;
– убедиться, что ваша CMS и все сторонние компоненты являются up-to-date;
– добавить защиту от брут-форс атак.

Источник: https://blog.sucuri.net