Как вылечить сайт самостоятельно

Как вылечить сайт самостоятельно thumbnail

251

Вылечить сайт от вирусов еще совсем недавно можно было только на платной основе и совсем не дешево. Прежде всего, мало кто на первых порах создания своего сайта, задумывается о его безопасности. А в случае заражения, желательно кого-нибудь обвинить, но только не себя. А между тем, в большинстве случаев, скажем прямо, мы сами виноваты в этом, «что тут петли-то крутить!»

Но и установкой одного антивируса здесь тоже не обойтись. Я не буду перечислять причины, а сразу перейду к главному вопросу. Если уж так случилось, что вы сами обнаружили или инструменты веб-мастера яндекса и гугла вам подсказали о присутствии вредоносного кода или вируса на вашем сайте, необходимо сразу принять меры, иначе о последствиях просто подумать страшно. Простой бан поисковиков вам покажется сказкой.

Если у вас статичный сайт-визитка созданный на простом html-шаблоне или сверстан вами самостоятельно, то вылечить такой сайт от вирусов покажется простым баловством. Ведь наверняка всегда есть копия такого сайта на локальной машине, старый удалил, новый закачал на хостинг и все готово. Но если вы используете cms-системы, здесь проблема посерьезней и решить ее на раз-два не получиться.

Конечно очень желательно иметь в запасе резервную копию сайта, но как всегда об этом можно и «позже» подумать.

Как вылечить сайт от вирусов созданный на cms

В любой cms-системе очень много различных папок и файлов необходимых для работы сайта. Отыскать в них зараженные файлы в ручном режиме, просто не реально. И здесь многим бесстрашным веб-мастерам пришли на помощь специализированные сервисы. О некоторых я рассказывал в статьях и курсах, но сегодня речь пойдет о сервисе «Вирусдай» (https://virusdie.ru).

Знал о нем давно, но не было повода для близкого знакомства. Но как говориться, не стоит доверять одному антивирусу как и одному врачу, а вдруг ошибка в диагнозе! И я решил протестировать на своем блоге. Все этапы проверки я зафиксировал с помощью подробных скриншотов.

Сервис проверки сайта на вирусы и его лечение

Для начала регистрируемся и получаем письмо с просьбой о подтверждении регистрации. Затем добавляем адрес сайта в специальное поле и процесс пошел.

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

Добавлять файл можно вручную, или автоматически, если есть данные для ftp-доступа

Если все сделано правильно и перейдя по ссылке у вас не будет ошибок, а будет вот такая картинка, тогда все отлично и можно выбрать способ лечения платный и бесплатный поиск, а лечить будем самостоятельно. В бесплатном режиме можно проверить только один раз, но а если нет желания постоянно думать о безопасности и тратить время на проверку и лечение сайта от вирусов, можно довериться сервису за не большую плату, всего 2499 рублей в год. Что называется, заплатил и спи спокойно.

Я выбрал бесплатную проверку сайта на вирусы и лечение в ручном режиме. Почему? Что касается денег, то они здесь ни при чем, а вот про ручной режим немного расскажу.

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

Кроме этого, сервис присылает отчет о проделанной работе на почтовый ящик, где так же можно просмотреть название подозрительных файлов и каждый файл является ссылкой на статью об этом файле.

Сам процесс проверки показан на картинке ниже.

Так же доступен полный отчет на сайте virusdie.ru в личном кабинете. Если выбран бесплатный способ, сервис просто дает информацию о найденных подозрительных файлах или вирусах.

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

Чтобы обезопасить себя и развеять все сомнения о подозрительных файлах найденных у меня на блоге, я пропустил все эти файлы еще через 50 антивирусов сервиса virustotal.

Проверка подозрительных файлов на вирусы

Хоть я точно знаю к каким плагинам относятся мои «подозрительные» файлы и лечить их от вирусов нет необходимости, все же решил устроить дополнительную проверку. Скопировал все файлы к себе на компьютер, запаковал в архив и с помощью virustotal проверил вначале архивом. Но и этого мне показалось мало, и я проверил весь сайт на вирусы с помощью следующей функции сервиса-это добавляя адрес сайта.

В результате ничего подозрительного выявлено не было. Я не сомневался в этом потому что отслеживаю периодически эти моменты.

Читайте также:  Как вылечить герпес в организме

Вылечить сайт от вирусов можно и вручную, но это для любителей работать ручками и копаться в файлах в поисках вредоносного кода или подозрительного файла. Об этом в другой раз. Если конечно это интересно, оставляйте комментарии.

Источник

Проанализируйте способы заражения:

  • Злоумышленник может получить пароли к администраторским панелям CMS, FTP или SSH аккаунтам. Обычно пароли подбирают или крадут с помощью троянских программ, заразивших компьютер вебмастера.

  • Уязвимости веб-приложения могут позволять посторонним размещать на сайте произвольный код.

  • Из-за заражения внешнего ресурса (партнерской программы, баннерной системы, счётчика) предоставленный вам код может стать опасным для пользователей.

Проанализируйте информацию о заражении в Яндекс.Вебмастере, в разделе Безопасность и нарушения. Раздел содержит перечень зараженных страниц, даты проверок и вынесенные антивирусом вердикты. Перейдя по ссылке в названии вердикта, вы увидите его описание и примерный вид кода, соответствующего вердикту (кода, который непосредственно появляется на страницах сайта).

Вы также можете самостоятельно воспроизвести проблему с помощью виртуальной машины.

  1. Остановите веб-сервер, чтобы оградить посетителей сайта от потенциальной опасности. Затем проверьте антивирусом файлы веб-сервера и все рабочие станции, с которых администрируют сервер (можно использовать бесплатные антивирусные утилиты) и смените все пароли: root, FTP, SSH, от административных панелей хостинга и CMS.

  2. Если до заражения была сделана резервная копия сайта, восстановите ее.

  3. Обновите до последних версий все используемые сайтом программы и поищите описания исправленных уязвимостей. Возможно, это поможет понять, каким образом сайт был заражен.

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

  5. Проверьте наличие вредоносного кода:

    • во всех серверных скриптах, шаблонах CMS, базах данных;

    • в конфигурационных файлах веб-сервера или интерпретатора серверных скриптов;

    • если вы используете shared-хостинг, проверьте другие сайты, расположенные на том же сервере — может быть заражен весь сервер.

Признаки вредоносного кода:

  • Код посторонний или незнакомый, не соответствует резервной копии или системе контроля версий.

  • Обфусцированный (нечитаемый, неструктурированный) код.

  • Дата модификации файлов совпадает с временем заражения или более поздняя. Этот параметр ненадежен, так как дата модификации файлов может быть изменена вирусом.

  • Использование характерных для вредоносного кода функций. Примеры таких функций для языка PHP:

    • динамическое исполнение кода (eval, assert, create_function);

    • обфускация (base64_decode, gzuncompress, gzinflate, str_rot13, preg_replace);

    • загрузка удаленных ресурсов (file_get_contents, curl_exec).

Пометка об опасности сайта в результатах поиска будет снята, если при очередной проверке робот Яндекса не обнаружит заражения. Чтобы ускорить перепроверку, в интерфейсе Яндекс.Вебмастера, в разделе Безопасность и нарушения, нажмите кнопку Я все исправил.

Рекомендуем в течение нескольких недель после заражения регулярно перепроверять файлы и код сайта на тот случай, если использованная уязвимость не была устранена или злоумышленники по прежнему имеют доступ к сайту.

Яндекс постоянно ищет и исследует новые виды заражений и публикует результаты исследований в блоге Безопасного поиска Яндекса.

Если вы обнаружили на своем сайте вредоносный или подозрительный код, отправьте его на анализ специалистам.

Чтобы ваш вопрос быстрее попал к нужному специалисту, уточните тему:

Источник

Как вылечить сайт самостоятельно

Никто не хочет, чтобы с его сайта пропали данные или ресурс стал источником заражения других устройств. Но такое случается, когда на сайт попадает вредоносный код, или, проще говоря, вирус.

Практика показывает, что в основном заражение сайта происходит через системы управления контентом (CMS) и плагины к ним. Вы либо скачиваете из неофициального источника уже зараженный файл. Либо скачиваете из официального, но продукт с ошибкой, о которой пока никто кроме хакеров не знает. Такие ошибки называют уязвимостями.

Хакеры постоянно сканируют интернет в поисках уязвимых сайтов. Когда находят — загружают в файлы сайта вредоносный код. Он-то и рассылает спам, перенаправляет пользователей на зараженные страницы или крадет данные.

Бывает и по-другому, но редко.

Как понять, что сайт заражен

Обычно о заражении сообщает браузер, настольный антивирус или панель веб-мастера. Чтобы удостовериться, проверьте с помощью бесплатных сервисов:

Что делать, если сайт заражен

Обновите программное обеспечение. Как только об уязвимостях становится известно, их исправляют и выпускают обновления. Устанавливайте обновления только с официальных сайтов: WordPress, Joomla!, Drupal.

Удалите пиратские плагины.Устанавливайте плагины только от официальных разработчиков. Если на каком-то сайте размещен бесплатный аналог платного плагина, то скорее всего он уже содержит вирус. Лучше заплатить за оригинальное ПО, чем лечить зараженный сайт.

Поменяйте пароли. Часто вирус попадает на сайт используя пароль от админских панелей FTP или CMS, которые крадет во взломанной почте или компьютере. Смените пароли доступа к панели управления сервером, FTP/SSH-аккаунтам, MySQL, CMS. Используйте сложные пароли: не менее 10 символов, заглавные и строчные буквы, цифры и специальные символы. Для быстрой генерации используйте бесплатные сервисы: 1, 2.

Читайте также:  Гепатит печени что это и как вылечить

Настройте права доступа к файлам. Через FTP или ISPmanager установите права доступа к файлам сайта. Права определяют, кто может просматривать, записывать и исполнять код. Для файлов сайта подходит значение 644 (изменять содержимое может только администратор, читать и исполнять код — любой посетитель сайта), для директорий лучше установить 755 (администратор может читать и редактировать, все остальные — только читать содержимое).

Восстановите резервную копию. Если вы знаете, когда произошло заражение сайта, восстановите созданную до заражения резервную копию. Это избавит от необходимости «лечить» ресурс.

Заблокируйте неиспользуемые функции в файлах конфигурации PHP. В файле конфигурации PHP (php.ini) добавьте disable_functions к неиспользуемым функциям из вот этого списка: passthru, shell_exec, system, proc_open, popen, curl_exec, curl_multi_exec, parse_ini_file, show_source.

Лечим сайт вручную

Лечить сайт можно вручную и с помощью антивирусов.

Если вы умеете работать с консолью сервера, очистите код сайта вручную. Для начала найдите чужеродный код: проверьте зараженные файлы, сравните их с незараженными из резервной копии. После, используя тип файла и фрагмент кода, найдите все зараженные файлы и удалите вредоносный код.

Пример команды для поиска паттернов вирусов в файлах php* и htm* директории /var/www/*/data/www/.

grep -Rils —include=.{php,htm*} -e ‘b=4594’ -e ‘e2aa4e’ -e ‘v58f57b98 = 0’ -e ‘forexam@pandion.im’ -e ‘pathToDomains’ -e ‘if(navigator.userAgent.match(‘ -e ‘var vst = String.fromCharCode’ -e ‘Menufiles/jquery.js’ -e ‘i5463 == null’ -e ‘r57.gen.tr’ -e ‘/rsize.js’ -e ‘feelthesame.changeip.name’ -e ‘40,101,115,110,98,114,105,110’ -e ‘c99sh’ -e ‘Shell by’ -e ‘ sh_ver’ -e ‘.tcpflood’ -e ‘c999sh’ -e ‘Array(base64_decode’ -e ‘Attacker Perl File’ -e ‘bogel = ‘ -e ‘(!function_exists(«getmicrotime»))’ -e’$d=substr’ -e ‘WSO ‘ -e ‘r57shell’ -e ‘msg=@gzinflate(@base64_decode(@str_replace’ -e ‘6POkiojiO7iY3ns1rn8’ -e ‘ mysql_safe’ -e ‘sql2_safe’ -e ‘aHR0cDovLzE3OC4yMTEu’ -e ‘php function _’ -e ‘encodeURIComponent(document.URL)’ -e ‘; if(isset($_REQUEST’ -e ‘UdpFlood’ -e ‘udp://1.1.1.1’ -e ‘ (md5($_POST[‘ -e ‘header(«Location: http’ -e ‘fx29sh’ -e ‘c999sh_surl’ -e ‘c99sh’ -e ‘/request12.php’ -e ‘NlOThmMjgyODM0NjkyODdiYT’ -e ‘semi-priv8’ -e ‘JHNoX25hbWUgPSAiIj’ -e ‘$shell_name’ -e ‘UvUbjYH4eJNgF4E1fedl’ -e ‘killall -9’ -e ‘Angel Shell’ -e ‘c100.php’ -e ‘c2007.php’ -e ‘c99 mod Captain Crunch’ -e ‘$c99sh_updatefurl’ -e ‘C99 Modified By Psych0’ -e ‘php-backdoor’ -e ‘r577.php’ -e ‘wso shell’ -e ‘backdoor’ -e ‘eval(stripslashes(‘ -e ‘Backdoor’ -e ‘Set WSHshell’ -e ‘WSHshell.Run DropPath’ -e /var/www/*/data/www/

Лечим с помощью антивирусов

Если вы не умеете работать с консолью сервера, используйте готовые решения. Самые большие базы паттернов вирусов, распространенных в рунете, содержат два антивируса: Virusdie и AI-Bolit.

Virusdie

Платный инструмент. Автоматически находит вредоносный код и удаляет его. Помогает снять санкции браузера. С Virusdie работать просто, так как антивирус интегрирован с панелью управления веб-сервером ISPmanager.

ImunifyAV

Cканер вирусов. Проверяет сайт на взлом, вирусы и хакерские скрипты. ImunifyAV также интегрирован с ISPmanager: устанавливается по умолчанию и раз в месяц сканирует весь сайт. Чтобы лечить, нужно активировать платную версию.

Как предотвратить заражение

  1. Используйте программное обеспечение только из проверенных источников.
  2. Генерируйте сложные пароли и не храните их в браузере.
  3. Настройте создание резервных копий.
  4. Изолируете сайты друг от друга, для этого создавайте каждый сайт на отдельном пользователе.
  5. Используйте Virusdie постоянно.
  6. Используйте ISPmanager для единовременного обновления всех установленных скриптов, или модуль интеграции ISPmanager с Softaculous.

Источник

Вылечим любой сайт от вирусов за 2500 рублей.

Привет, друзья. Раз себя уж мы прорекламировали, можно переходить к основной теме статьи, это самостоятельное лечения сайта от вирусов. Вирусов бывает много, но в рамках этой статьи мы поговорим о трех распространенных видах: Obfuscated.Globals, Trojan.Inject и вредоносные JavaScript инъекции (его часто помечают как “подозрительный JavaScript код”).

Чтобы самостоятельно вылечить сайт от вирусов потребуется владение базовыми навыками веб-разработки, а именно:

● Умение ориентироваться в файлах сайта;

● Хорошо владеть основами управления хостингом;

● Знание HTML;

● Быть уверенным пользователем SSH;

● На базовом уровне владеть PHP*;

● На базовом уровне владеть JavaScript*.

*Когда мы говорим “на базовом”, то имеем в виду, что Вы сможете отличить PHP код от JavaScript, знаете, что такое переменные, функции, условия и понимаете с каких строк начинается тот или иной язык.

P.S: Иногда файлы бывают конкретно так повреждены, что приходится переписывать весь файл на том или ином языке программирования (чаще всего это PHP).

Как вылечить сайт от вирусов

Итак, приступим. Сначала нужно определить какой же из трех видов вируса подхватил Ваш сайт: Obfuscated.Globals, Trojan.Inject или вредоносный JavaScript код. С этим пунктом Вам поможет лишь антивирус.

Вредоносный или подозрительный JavaScript код

Чаще всего самый легкий вариант для лечения. Обычно легко внедряется в виде подгружаемого из вне скрипта во всякие CMS, где есть кеш — Битрикс, Webasyst. Выглядеть может так:

лечим самостоятельно java script инъекцию

Естественно, это не код от Google Analytics, хотя неопытного пользователя это может ввести в заблуждение. Обычно вирусы просто маскируют таким образом. Всегда можно вырезать код из тега src=”” и кинуть ссылку в Google.

Читайте также:  Как вылечит голеностоп за 2 дня

Как найти

Если, по какой-то причине Вы не знаете точного нахождения файла, то воспользуйтесь поиском через SSH. Обычно такое происходит, когда вирус показывает сторонний сервис-антивирус с какого-нибудь сайта.

ищем вирус с помощью ssh

Команда grep -rn “искомый текст” отлично подойдет. Если будете указывать ссылку на скрипт с HTML атрибутами, не забывайте про экранирование кавычек. Также, с помощью того же терминала можно запустить проверку всех файлов и показать какие из них были добавлены или изменены за месяц. Например, find -type f -mtime -30 ! -mtime -1.

За подробными описаниями этих команд просим проследовать в Google. Ибо если сейчас это тут объяснять может уйти еще килотонна букв (когда-нибудь мы напишем свою статью про работу с терминалом).

Как вылечить

Чтобы избавиться от этой заразы, достаточно просто удалить эту нехорошую строчку и снова запустить антивирусную проверку.

Еще можно воспользоваться бэкапом (многие хостинги дают аж до 30 резервных копий на каждый день месяца). Вдруг 2 недели назад вируса не было? Но запомните, Ваши все изменения на сайте могут пропасть, будьте внимательны!

Важно: иногда антивирусы принимают за “вредоносный JavaScript код” вполне нормальные скрипты, например, код от JivoSite или Callibri. Хотя антивирусы внутри хостинга reg.ru, nic, netangels почти не допускают таких ошибок.

Trojan.Inject

В нашей практике чаще всего это обычный web shell. Это такой злой скрипт (а иногда веб-приложение), который используют для управления чужими сайтами и серверами: выполнения SSH команд, перебор паролей, доступ к файловой системе и т.д.

Trojan.Inject пример

Как найти

Иногда, если достаточно личного опыта, можно просто найти «странный» файл, лазая по папкам сайта. Например, автор этой статьи как-то увидел на своем новеньком сайте непонятный файл, который не свойственен CMS ModX. Естественно, появились вопросы.

Если антивирус показал только строчки кода или название файла, можно воспользоваться терминалом и командами grep -rn (искать строчки кода с нужными словами) или find -name (искать файл по имени).

Как вылечить

Здесь есть два стула…

Первый, это если злой файл оказался пришельцем. Вы хорошо знаете структуру своего сайта, поняли это, когда внимательно изучили сам файл (без этого никуда) или проверили через SSH появление/обновление файлов. Тогда просто его удаляйте.

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

декодированный Trojan.Inject

Второй, если инъекции подверглись важные файлы системы. Тут либо бэкап, либо страдать. Если бэкап не помогает, и мы выбираем страдания, то внимательно читаем сам код вируса (или файла), хотите Вы этого или нет. Ибо простое удаление повредит работоспособность Вашего сайта.

пример Trojan.Inject в php коде сайта

Опытный пользователь поймет, что это лишь искусственно воссозданный пример. Конечно, что-то подобное можно увидеть и в реальной жизни.

Если Вы нашли зашифрованную инъекцию, просто удалите ее начиная с <? и заканчивая ?>.

Obfuscated.Globals

Обфускация — процесс превращения очевидного в неочевидное.

Почти любой вирус проходит через обфускацию, поэтому, когда антивирус не уверен в содержимом файла, то он дает ему обозначение Obfuscated.Globals.

Через обфускацию проходит Doubt.Obfuscated.Globals, иногда Doubt.PHP.Spaces (более гениальное решение, стоит проскролить нормальный код направо и за кучей пробелов находишь “подвох”.) и даже Eval.gz.b64.short, хотя это закодированный base64, но автору статьи все равно. Ибо на первый взгляд это какие-то каракули.

Важно: иногда это может быть не вирус. В нашей практике программист шифровал важные куски кода для одного веб-приложения, и впоследствии антивирус указывал на наш код. Так что, если Вы когда-то шифровали файл сами — не пугайтесь.

Как найти

Все такие же способы как с Trojan.Inject. Если известен только кусок кода или имя файла, включаем SSH и начинаем: grep -rn или find -name. Можно через терминал сравнивать все измененные файлы.

Как лечить

Здесь только два пути.

Первый. Делаем бекап всего сайта или нужного файла до состояния, когда он был “нормальным”.

Второй. Если бэкапа нет или он не помог. Идем в “злой” файл и ищем вредоносный код, а далее, как на скриншоте выше, удаляем его начиная с <? и заканчивая ?>. Если весь наш файл зашифрован, то добро пожаловать в ад. Читаем, декодируем, удаляем ненужное или просто переписываем весь файл.

Итог

Если Вы удалили вирус, то нет смысла радоваться. Он ведь как-то попал на сайт, поэтому включите голову и ищите дырку! Возможно, обычное обновление Вашей CMS сможет закрыть этот вопрос. Если имеете дело с самописным движком, то проверьте корневые файлы сайта. Может, в каком-нибудь router.php реализация маршрутизатора URL сделана на школьном уровне. Кто знает, кто знает, дыр может быть много.

Вылечим любой сайт от вирусов за 2500 рублей.

Источник