Вирус в htaccess на джумле

Деструктивная активность некоторых асоциальных членов общества не дает нам возможность спокойно спать. Во выдал))).


Сделать сайт окажется самым простым. Намного сложнее будет сделать его популярным и посещаемым. Еще немного проблем нам добавят атаки на сайт и его взломы. К подобным вещам надо быть готовым заранее.
Атакам подвергаются практически все сайты. Взламывают тоже любые CMS без исключения. Методы заражения и взлома, по сути, не отличаются для разных CMS.
Чаще всего это заражения сайтов вирусами-троянцами, установка бекдоров (backdoor).
Итак, безопасность сайта на Joomla, стоит разделить на части:

  • Настройка файла .htaccess
  • Оптимальная настройка сервера Apache
  • Права файловой системы
  • Обновление CMS Joomla
  • Удаление неиспользуемых расширений Joomla.
  • Обновление расширений Joomlа.
  • Не используйте варезные расширения.
  • Установка расширений безопасности.
  • Сложные пароли к учетной записи администраторов.

Это основной список необходимых мер. Многие веб-мастера не задаются вопросом как организована безопасность на самом хостинге, где размещен сайт. И это заблуждение очень распространенное. Это надо делать в первую очередь. Ведь хостинги предоставляют услугу, как есть и только на некоторых из них сделана тонкая настройка.

Файл .htaccess
По умолчанию в файле не прописаны возможные команды ограничивающие доступ и позволяющие защитить файлы и директории сайта. Настроив файл .htaccess, можно защитить такие важные директории, например как administrator. Можно блокировать доступ на сайт с определенных IP-адресов запретив все и разрешив только свой.
В стандартной поставке Joomla
Сам дистрибутив уже идет в комплекте с настроенным файлом .htaccess, нужно только переименовать его из htaccess.txt в .htaccess. Перед внесением изменений в файл .htaccess, не забываем сделать копию. Важно также, чтобы хостинг поддерживал файл .htaccess если после переименования файла, сайт покажет 500 страницу, значит хостинг не поддерживает .htaccess. Обратитесь в администрацию или меняйте хостинг.

Запрет исполнения файлов в корне сайта, в том числе выполнение php-скриптов.



order deny,allow
deny from all


order allow,deny
allow from all


order deny,allow
allow from all

Запрет доступа к xml-файлам расширений



Order allow,deny
Deny from all
Satisfy all

Блокирование прямого доступа к ядру
Данное решение закроет доступ к бекдорам, тем самым, увеличивая безопасность сайта на Joomla. По личному опыту, часто сайт заражается бекдором под названием FileMan. При удаленном вызове вы получаете полный доступ к файловой системе, вы можете изменять любые файлы, при этом оставляя дату последнего изменения, а не текущих.
Создать новый файл .htaccess. Добавить инструкцию, которая указана ниже. Она запрещает выполнение скриптов. Добавить его во все папки корня сайта.

Настройка Apache сервера

Теперь перейдем к настройке безопасности веб-сервера Apache, он обрабатывает PHP-код и возвращает браузеру HTML-код. Его тоже надо настроить. Тут может возникнуть ряд трудностей, так как не на всех серверах есть доступ к файлу php.ini (в нем хранится конфигурация Apache). Можно попробовать сконфигурировать через .htaccess.

Установите модуль mod_security
ModSecurity – модуль Apache, добавляющий возможности обнаружения и предотвращения вторжения на Web-сервер.
К сожалению вы сами не сможете этого сделать, советуем обратиться к администрации хостинга или к администратору выделенного или вирутального сервера. Они должны установить и сконфигурировать этот модуль.

Используйте PHP последних версий - 5.0 и выше.
Используйте локальный php.ini
Некоторые хостинги позволяют использовать собственный файл конфигурации Apache, который находится в корне сайта. Если такая возможность есть, не упустите ее.

Настройка php.ini
Настройка простая. Вот рекомендуемые настройки безопасности Apache.

disable_functions = show_source, system, shell_exec, passthru, exec, phpinfo, popen, proc_open
open_basedir = /home/users/you/public_html:/tmp
magic_quotes_gpc = 0
safe_mode = 0
register_globals = 0
allow_url_fopen = 1
allow_url_include = 0

Если нет возможности настроить php.ini, то можно попробовать прописать в .htaccess.

php_flag register_globals Off
php_flag file_uploads On
php_flag allow_url_fopen off
php_flag magic_quotes_gpc On
php_flag magic_quotes_runtime Off

Права в файловой системе

Правильная насройка такая:
Корневая директория 750 (например public_html)
Файлы 644
Директории 755 (711 если вы параноик, но не для директорий, которые должны быть перечислены, например images)

Обновление CMS Joomla
Самый важный шаг. Надо регулярно обновлять систему. Разработчики работают над безопасностью периодически закрывая дырки в ядре.
Перед обновлением обязательно делайте резервную копию всего сайта с базой данных. Используйте инструменты, которые предоставляет хостинг или воспользуйтесь компонентом Akeeba Backup.

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

Обновление расширений Joomlа
Обязательно следить за релизами. Одно из часто взламываемых расширений — это устаревший визуальный редактор JCE. Есть более современный, удобный и бесплатный редактор JoomlaCK для всех версий Joomla.

Не используйте варезные расширения
Часто заражения сайта на Joomla происходит через расширения, скачанные с варезных сайтов. В 100% случаев вы уже там найдете вирус. Расширения не всегда стоят дорого. 10-15$ вас не разорят, зато это сделает ваш сайт более безопасным, заодно получите самую последнюю версию. Не полагайтесь на то что вы увидели и устранили возможный вирус в компоненте. Возможно он там ни один.

Установка расширений безопасности
Есть ряд полезных расширений для Joomla, который значительно повысят безопасность сайта. Приведу их список.

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

Вот, в пока и все! Рекомендую выполнить эти несложные настройки.

В серии статей Защита Joomla мы уже рассмотрели различные способы и средства защиты Joomla от хакерских атак и вирусов. Но что делать, если ваш сайт уже заражен? Как его вылечить?

В этой статье приведено пошаговое руководство лечения сайта на Joomla от вирусов (приведенные шаги актуальны и для сайтов на других CMS). Выполните все шаги, и ваш сайт будет восстановлен.

Кто и зачем заражает сайты вирусами?

Давайте, в первую очередь, разберемся в теоретических причинах заражения. Предположим, что у вас действительно не столь посещаемый сайт, чтобы заинтересовать хакеров (его посещают десятки – сотни человек ежедневно). Кто, зачем и как заразил ваш сайт?

Не стоит сразу перебирать врагов и конкурентов. Скорее всего, заражение вашего сайта – это случайность и опосредовано, виноваты в нем ВЫ (или веб-мастер, который отвечает за ваш сайт компании).

С большой долей вероятности точно также получилось и с вашим сайтом.

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

Дальше в дело вступает лотерея. Предположим, в один прекрасный день кто-то обнаружил уязвимость в Joomla. Он отправил информацию о ней разработчикам Joomla. Они исправили уязвимость и выпустили обновленную версию. Через некоторое время о найденной уязвимости становится известно широкой публике, в которой встречаются и не очень хорошие личности. Одна из таких личностей пишет паука – программу, которая сканирует интернет на предмет поиска необновлённых сайтов с этой уязвимостью и, находя их, использует уязвимость для взлома.

Конечно, нельзя исключать и целенаправленной хакерской атаки на ваш сайт, но вероятность такой атаки очень мала по сравнению с тем, что вы поймали паука. Я бы сказал, 1% против 99%. С ростом популярности, посещаемости и показателей вашего сайта вероятность будет смещаться в сторону хакерской атаки, но пока ваш сайт не содержит ничего особо ценного, хакеры не будут тратить на него время, т.к. их время стоит дороже.

Мой сайт заражен. Что делать?

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

Если ваш сайт заражен, то по уровню халатности вы попадаете в одну из двух категорий:

  1. Я регулярно делаю резервные копии своего сайта / Я настроил регулярное резервное копирование на хостинге.
  2. Резервные копии? Ээээ… Что это?

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

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

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

Давайте разберемся почему.

Представим столь популярные нынче фильмы про зомби. Один человек стал зомби, потом он покусал другого, тот третьего и так заразилось половина планеты. Спустя некоторое время человечество опомнилось и уничтожило всех зараженных. Воцарился мир и спокойствие. Спустя еще некоторое время оказалось, что в каком-то глубоком темном подвале оставался еще один зараженный, которого не смогли обнаружить. И затем в этот подвал зашел здоровый человек…

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

Всё это не значит, что нужно опустить руки и пойти делать новый сайт. Всё-таки, шаги, описанные далее, позволяют в высокой долей вероятности вычистить весь вредоносный код, до последней строчки.

Подведем итог шага 1.

  • Если вы делали резервные копии, найдите ту из них, которая еще не заражена и восстановите из нее сайт. Далее переходите к шагу 7.
  • Если вы не делали резервные копии, будьте готовы к тому, что никто не даст вам 100% гарантии на полную отчистку сайта от вирусов. Переходите к шагу 2.

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

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

Стандартный Joomla-сайт состоит из двух частей:

  • Файловая система сайта
  • База данных

Вредоносный код может быть и в файлах и в базе данных, но всё-таки наиболее вероятно найти его в файлах.

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

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

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

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

На этом этапе разминка закончилась. Впереди рутиный и нудный труд. Пришло время проверить зараженный сайт специализированным средствами поиска вредоносного кода. К таковым относятся:

  • AiBolit – бесплатный сканер вирусов и вредоносных скриптов. Он удобен тем, что может быть очень легко запущен под Windows.
  • Manul – антивирусная утилита от Яндекса.

Советую использовать AiBolit, поскольку проект Manul закрыт Яндексом и более не обновляется. По результатам проверки для вас будет сгенерирован отчет о подозрительных файлах и уязвимостях.

  1. Скачиваете с официального сайта AiBolit для Windows.
  2. Копируйте файлы зараженного сайта в папку site.
  3. Запускаете файл start.bat.

По результатам будет сгенерирован файл отчета AI-BOLIT-REPORT.html

Manul – это php-скрипт. Чтобы его запустить, нужен локальный web-сервер. Вы можете использовать для этих целей Open Server или Denwer. Далее следуйте инструкциям с официального сайта Manul.

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

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

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

Код вредоносного скрипта:

Не бойтесь открывать зараженные php-файлы для просмотра через текстовый редактор. Пока не запущен интерпретатор PHP (локальный сервер, который может выполнить PHP-код), вирусы и вредоносные скрипты не представляют опасности.

Если зараженных файлов найдено слишком много, можно воспользоваться такой хитростью: уточните текущую версию Joomla на вашем сайте, скачайте именно эту версию с официального сайта. Скопируйте файлы скачанной версии в папку с зараженной, переписывая совпадения. Таким образом, вы сможете переписать большую часть зараженных файлов оригинальными. Аналогичным образом можно заменить файлы крупных расширений Joomla. Более подробно это описано в шаге 5.

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

Данный шаг может отнять много времени, а также может быть сложен для тех, кто не очень хорошо разбирается в PHP-коде. Общий совет: если сомневаетесь вредоносный перед вами скрипт или нет, считайте, что да. Не бойтесь удалять зараженные файлы Joomla и расширений. На следующих шагах мы их восстановим. Исключение составляют лишь файлы, находящиеся в каталоге используемого вами шаблона сайта. Их не получится восстановить и работать с ними нужно очень осторожно.

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

Теперь пришла пора постепенно включать голову. Надеюсь, что вы последовали моему совету, на предыдущем шаге и копировали фрагменты кода вредоносных скриптов в отдельный файл.

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

Для выполнения данного шага нам понадобится программа Total Commander или любая другая утилита, умеющая искать по файлам. Я все же советую использовать Total Commander.

Открыв файловую структуру сайта через Total Commander, переходим в Команды –> Поиск файлов…

Здесь нам интересны две вкладки.

Позволяет указать текст, который нужно искать в файлах. У вас уже есть сохраненные фрагменты кода вируса. Смекаете? Выбираем фрагмент и ищем его повторения в файлах по всей файловой системе сайта. Будьте уверены, что-то найдется. Далее проверяем найденные файлы, чистим/удаляем.

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

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

После выполнения всех описанных действий можно выполнять шаг 5.

Этапы тут следующие:

  1. Откройте админку зараженного сайта (старого, не отчищенного!) и перейдите в Расширения –> Менеджер расширений –> Управление.
  2. Перепишите себе все установленные сторонние расширения и их версии. Запишите версию Joomla.
  3. Скачайте Joomla заданной (не последней!) версии и все расширения заданных версий.
  4. Обновите вручную файловую структуру Joomla путем копированием скачанной версии с заменой.
  5. Обновите вручную файловую структуру расширений путем копирования с заменой.

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

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

  1. Скачать дамп базы данных сайта и проверить его вручную. Вы можете скачать через PhpMyAdmin базу данных сайта в виде текстового файла и открыть ее через Nodepad++ или другой текстовый редактор. Данный файл желательно просмотреть на предмет присутствия странных фрагментов, проверить на наличие опасных элементов, таких, как iframe.
  2. В таблице #__users базы данных сайта, найти всех пользователей с правами суперадминистратора и проверить, нет ли там посторонних.

После этого нужно развернуть и запустить сайт на локальном сервере (шаг 7).

Поскольку я, в некоторой степени, параноик, советую на этом шаге запускать сайт на локальном сервере с отключенным интернетом.

Перед запуском нужно морально быть готовым к тому, что сайт запустится с ошибками. Возможно, вы удалили какой-то файл Joomla или расширения во время чистки, но при этом не восстановили его в дальнейшем. Ничего страшного в этом нет. Главное, чтобы запустилась админка. Если это произошло, делаем следующее:

  1. Обновляем Joomla до последней версии путем установки обновления через менеджер расширений Joomla.
  2. Обновляем все расширения до последних версий путем установки обновлений через менеджер расширений Joomla.

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

  • Пароли администраторов
  • Пароль на сервере базы данных
  • Пароль FTP
  • Пароль от панели управления хостингом

На этом всё, ваш сайт отчищен. Осталось убедиться, что уязвимость, которая привела к заражению, закрыта.

Снова включаем голову (да знаю, она у вас уже устала и ничего не соображает). Что же всё-таки привело к заражению? В начале статьи я дал пару мыслей на этот счет.

Постарайтесь понять, где на вашем сайте могут быть уязвимости. Не обязательно быть большим специалистом. Важно просто здраво мыслить.

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

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

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

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

Если ничего не помогает.

Но что делать, если даже после чистки и восстановления сайта вирусы появляются вновь? Здесь есть два варианта:

  1. Вы можете отдать уже отчищенную копию специалистам по безопасности, чтобы они проверили ее на предмет того, что упущено вами.
  2. Вы можете создать новый сайт (в некоторых случаях это может быть дешевле), но надеюсь, что до этого, всё-таки, не дойдет.

Главный вывод.

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

Главное, что нужно делать, чтобы не оказаться один на один с взломанным сайтом – регулярное резервное копирование. Позаботьтесь о том, чтобы у вас на компьютере хранилась хотя бы одна резервная копия за каждый месяц, и спите спокойно ;-).

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

В данной статье я рассмотрю основные варианты встраивания вирусных редиректов.

Внимание! Удаляя редирект, Вы удаляете лишь следстствие, для того, чтобы ситуация не повторилась, Вам стоит искать причину попадания вирусов на сайт!

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

В первую очередь ищем вставки кода в файлы .htaccess, особенно в корне сайта

Все что связано с Rewrite стоит проверить, куда перенаправляет.

Ниже я приведу пару вредоносных вставок - которые создают дорвеи и тысячи страниц в поиске, так называемый японский спам (сео-спам, страницы с иероглифами - тут много названий):

Если увидите что-то подобное - смело можно удалять, если сомневаетесь, какие строки можно оставить, то возьмите стандартный файл вашей CMS - там не будет находиться вирус!

Обычно редиректы прописывают для запросов с мобильных и планшетов:

android|plucker|pocket|psp|symbian|treo|vodafone|wap и другие вариации мобильных заголовков

как и для переходов с поисковых систем:

Если этот пункт не помог, то стоит обратить внимание на код страницы - порой часто редирект добавляют через Javascript

Чтобы избавиться от вредоносного кода может понадобиться массовая замена всех .js файлов.

Обязательно проверяйте индексные файлы и папку шаблона - это излюбленные места хакеров для вирусов. Особенно тщательно пройдитесь по файлам index.php, footer.php, head.php, header.php - в последнее время популярно стало размещать сами вирусы не в них, а в виде ссылок. Поэтому внимательно проверяйте, какие файлы подгружаются посредством команд include и require.

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

К примеру, в последнее время встречаю не один сайт на джумле ( в частности на Joomla 2.5), где по пути includes/inc.class.php находится сам вирус, а в файл application.php в этой же папке вставлена следующая строка

Обычно параллельно с этим libraries/joomla/appplication находится вирус редиректа с именем joomla-app.php

не подскажите что это за папка

вот полный путь до папки

в файле .htaccess

order deny,allow
deny from all

в файле .htaccess.backup

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond % !-f
RewriteCond % !-d
RewriteRule . /index.php [L]

order allow,deny
deny from all

в файле index.html

там пусто никаких записей нет

Подскажите пожалуйста если можно, что еще можно было бы поставить с связке с

All In One WP Security

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

Сделать такую связку чтобы они не конфликтовали между собой

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

Насчет крона это не про меня, не настолько понимаю

В любом случае спасибо что подсказали

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

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

и так на всех моих сайтах и их поддоменах.
Я точно знаю что дело не в сайтах и не моих ПК.
Дело в самих доменах. Помогите прошу люди решить эту задачу.

Про жизнь, путешествия, вкусную еду, технологии, веб-разработку и Drupal

Природа площадок сразу же намекнула на то, что виной всему происходящему — некий вирус (а не Яндекс).

Поскольку симптомы в данном случае были похожие, то первым делом я пошёл проверять .htaccess и увидел там примерно следующее:

Соответственно, если столкнетесь с подобным, то смотрите дату/время последнего изменения .htaccess (ни в коем случае сразу же не бросайтесь его очищать и пересохранять), затем просите у хостера (если сайт на shared-хостинге) FTP-логи за период вокруг момента заражения. По логам выясняйте, что ещё делал тот же злобный IP-адрес, с которого поправили .htaccess .

  1. Искать PHP-shell по всей структуре сайта. Если shell был внедрён, то смена FTP-пароля — не поможет (добавлять вредные правила в .htaccess вам и дальше продолжат через shell).
  2. Обновлять CMS и прочий софт.

Профилактика: ещё раз повторим общеизвестные правила защиты от вирусов и троянов

Самые популярные причины попадания вируса на сайт:

  1. Не использовать простые пароли, которые треснут как орешек за пару часов ненавязчивого перебора.
  2. Не держать в открытом не зашифрованном виде пароли локально, иметь и обновлять антивирус.
  3. Обновлять CMS и фреймворки, на которых построен сайт, до актуальных версий.
  4. Всегда иметь работоспособный бэкап. Для этого, обычно, достаточно иметь резервную копию месячной, недельной и суточной давности, проводя раз в квартал её тестовое разворачивание.

А ещё такой вирус не страшен сайтам, работающим целиком на nginx без Apache 🙂

Кроме осады .htaccess этот вирус и его родственники умеют прописываться во всех поголовно php-файлах.

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

На выходе при исполнении файла (и декодировании всей этой беды) получаем всё те же редиректы, только средствами PHP, а не веб-сервера.

find ./ -type f -exec sed -i 's/eval(base64_decode(\"DQplcn[^;]*;//g' <> \;

Если имеется SSH доступ к серверу, то запустить всё это можно прямо там (иначе — надо будет скачать все файлы к себе, полечить локально, залить обратно).

[…] тут, кстати, Алексей Костин написал отличную статью по борьбе с вирусами в .htaccess Леш, я честно твою статью через поиск нашла и она — […]

Andr435
Дек 23, 2012 @ 20:55:37

Павел
Янв 05, 2013 @ 01:03:01

Irshat
Янв 13, 2013 @ 12:59:23

Большое спасибо. Вычистил все php одной командой find от eval(base64_decode все свои сайты на одном хостинге

alex
Июл 09, 2013 @ 11:07:15

Подтверждаю, сайты на Majordomo заразились этой гадостью, смена ftp паролей, учетных данных, e-mail, чистка левого кода, заливка из бэкапа оригинальных файлов, настройка прав доступа — все в пустую, сайты вновь редиректят мобильный траффик на различные sms и сайты с вирусами. Сайтов более 50 различных тематик, разных клиентов, на одной системе управления с аналогичными настройками, та часть, которая расположена у Majordomo — стабильно страдает этой фигней. Majordomo — небезопасный хостинг!

kostin
Июн 04, 2014 @ 10:21:31

> на одной системе управления с аналогичными настройками
Так может дырка в ней, а не в хостинге?

Dima_Bedny
Июн 04, 2014 @ 10:17:26

Приветствую Как конкретно чистил файл .htaccess? Обьясните пожалуйста!

kostin
Июн 04, 2014 @ 10:19:47

Как конкретно чистить — зависит от конкретного файла. Откройте его в текстовом редакторе и ищите там, для начала, глазками редиректы на посторонние домены.

Dima_Bedny
Июн 04, 2014 @ 10:43:27

файл .htaccess! Просто в редакторе удалить строки или как?

kostin
Июн 04, 2014 @ 10:45:10

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

Dima_Bedny
Июн 04, 2014 @ 10:50:00

kostin
Июн 04, 2014 @ 10:53:36

Dima_Bedny
Июн 04, 2014 @ 10:59:06

Осталось только:
RewriteEngine on

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ — [L]
RewriteCond % !-f
RewriteCond % !-d
RewriteRule . /index.php [L]

kostin
Июн 04, 2014 @ 11:08:51

Коли у вас Вордпресс, то скачайте уже себе дистрибутив акутальной версии, достаньте оттуда .htaccess и замените ваш на дефолтный. А также обновите сам Вордпресс. 95% что где-то у вас сиди шелл, который всё равно потом .htaccess перезапишет, если вы шелл не прибьёте. Помочь вам в охоте на шелл может модуль Anti-Malware by ELI (Get Off Malicious Scripts), только не мучайте меня вопросами по использованию модуля. И сделайте бэкап.

Dima_Bedny
Июн 04, 2014 @ 11:11:35

Спасибо огромное все теперь ясно.

Vladimir
Авг 23, 2014 @ 17:45:02

Добрый день!
До недавнего времени был на моем сайте редирект с мобильных устройств, теперь ещё и с обычных. Никак не могу найти — где вирус засел.

text/x-generic .htaccess
ASCII English text

#php_value display_errors Off

##
# @package Joomla
# @copyright Copyright (C) 2005 — 2013 Open Source Matters. All rights reserved.
# @license GNU General Public License version 2 or later; see LICENSE.txt
##

##
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!
#
# The line just below this section: ‘Options +FollowSymLinks’ may cause problems
# with some server configurations. It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file. If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url’s. If they work,
# it has been set by your server administrator and you do not need it set here.
##

## Can be commented out if causes errors, see notes above.
#Options +FollowSymLinks

## Mod_rewrite in use.

## Begin — Rewrite rules to block out some common exploits.
# If you experience problems on your site block out the operations listed below
# This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to base64_encode data within the URL.
RewriteCond % base64_encode[^(]*\([^)]*\) [OR]
# Block out any script that includes a tag in URL.
RewriteCond % (|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL.
RewriteCond % GLOBALS(=|\[|\%[0-9A-Z]<0,2>) [OR]
# Block out any script trying to modify a _REQUEST variable via URL.
RewriteCond % _REQUEST(=|\[|\%[0-9A-Z]<0,2>)
# Return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]
#
## End — Rewrite rules to block out some common exploits.

## Begin — Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
## End — Custom redirects

##
# Uncomment following line if your webserver’s URL
# is not directly related to physical file paths.
# Update Your Joomla! Directory (just / for root).
##

## Begin — Joomla! core SEF Section.
#
RewriteRule .* — [E=HTTP_AUTHORIZATION:%]
#
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond % !^/index\.php
# and the request is for something within the component folder,
# or for the site root, or for an extensionless URL, or the
# requested URL ends with one of the listed extensions
RewriteCond % /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
# and the requested path and file doesn’t directly match a physical file
RewriteCond % !-f
# and the requested path and file doesn’t directly match a physical folder
RewriteCond % !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
## End — Joomla! core SEF Section.

Подскажите пожалуйста — здесь не спрятан ли вирус?

Заранее огромное спасибо!

Константин
Мар 26, 2015 @ 18:51:39

Благодарочка!
Правлю я .htaccess, а он мне назад его откатывает))))
Спасибо за подсказку!

Виктор
Янв 04, 2017 @ 14:50:54

kostin
Янв 26, 2017 @ 14:26:54

Если происходит редирект, то это не обязательно означает, что он прописан именно в .htaccess (вирус может вшить редиректы и, например, в php-файлы ядра, модулей, темы). Ищите везде. Для Вордпресса вам в поисках поможет плагин — gotmls

Сергей
Июл 25, 2017 @ 11:04:47

Добрый день Kostin! Подскажите, пожалуйста, существует ли плагин для MODx, аналогичный Anti-Malware by ELI для Вордпресс?

Александр Коховец
Апр 20, 2018 @ 16:24:20

Здравствуйте поможете с лечением за денежку? у меня друпал, емайл qwerdie@mail.ri

Сергей
Июл 25, 2017 @ 11:03:49

Добрый день Kostin! Подскажите, пожалуйста, существует ли плагин для MODx, аналогичный Anti-Malware by ELI для Вордпресс?

Charlestyday
Мар 16, 2019 @ 21:49:44

hOur company offers weight loss products. Look at our health contributing portal in case you want to look better. Our company offers supreme quality health and related products. Take a look at our health contributing website in case you want to look better. Our company offers a wide variety of non prescription products. Take a look at our health site in case you want to to feel healthier with a help of generic supplements. Our company provides a wide variety of non prescription products. Take a look at our health portal in case you want to to feel healthier with a help of generic supplements. Our company provides herbal weight loss products. Look at our health contributing site in case you want to feel better. Our site offers a wide variety of non prescription drugs. Look at our health portal in case you want to to feel healthier with a help generic supplements.
Our company offers safe healthcare products. Visit our health contributing website in case you want to improve your health. Our company provides generic supplements. Visit our health contributing website in case you want to feel better. Our company provides a wide variety of non prescription drugs. Visit our health website in case you want to to feel healthier with a help of general health products. Our company offers safe health and related products. Look at our health contributing website in case you want to strengthen your health. Our company offers a wide variety of general health products. Take a look at our health contributing website in case you want to feel better.

Это действительно полезный
совет, особенно для тех, кто новичок в этом вопросе 😉

Большое спасибо за ваши удивительные статьи…

Я действительно наслаждаюсь чтением!

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

  • Drupal (6)
  • Веб-разработка (9)
  • Железо (1)
  • ЗОЖ (1)
  • Маркетинг (4)
  • На злобу дня (8)
  • Обзоры (1)
  • Полезняшки (1)
  • Политика (1)
  • Приготовление пищи (2)
  • Путешествия (16)
  • Разное (8)
  • Софт (1)
  • Спорт (2)

Читайте также:

Пожалуйста, не занимайтесь самолечением!
При симпотмах заболевания - обратитесь к врачу.