Сайты заражаются каждые 10-15 минут. Как остановить нашествие вредоносного кода?

  • 24 Ответов
  • 626 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

SweetApple

  • Осваиваюсь на форуме
  • ***
  • 26
  • 0
Замучили бесы окаянные!
На nic.ru у нас есть площадка, там находится 12 сайтов. Движки - в основном, Joomla (1.0, 1.5 - сайты уже довольно старенькие), но есть три сайта на самописных движках. Все заражаются одинаковым образом.
В корне сайта появляется новый (или перезатирается старый).htaccess с таким содержимым:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} Google [OR]
RewriteCond %{HTTP_REFERER} Google
RewriteCond %{REQUEST_URI} !(\.js|\.css|\.png|\.jpg|\.jpeg|\.gif|\.svg|\.ttf|\.woff|\.eot)
RewriteRule ^.*$ 53472b.php [L]
</IfModule>

Также в корне сайта появляется 53472b.php, с нехорошим кодом:
$ye = "\x63\x68\x72"; $E24 = "\x69\x6e\x74\x76\x61\x6c"; и далее в таком же духе.

Аналогичный код добавляется в начале файла index.php (файл index.php не перезатирается, код просто добавляется в начале).
Также по сайту добавляются новые папки и файлы с вредоносным кодом.

Чищу сайты от вредоносного кода, на файлы index.php и .htaccess выставляю права 444.
Но через 10-15 минут всё повторяется снова: права на файлы index.php и .htaccess опять 644, файл .htaccess опять перезаписан, к index.php опять прицепился вредоносный код. И постепенно (в течение нескольких часов) начинают появляться новые папки с плохими файлами, притом весят они довольно много: за ночь свободное место на площадке уменьшается примерно на гигабайт (!).

Пароль от ftp площадки меняла. На компьютере, с которого коннекчусь к ftp, стоит Norton Antivirus. Помимо этой площадки в фтп-клиенте сохранены пароли и от других площадок на nic.ru, но там сайты (тоже, в основном, сделанные на joomla) поживают спокойно, замучили только эту площадку!

Что делать? Как остановить нашествие вредоносного кода?

*

winstrool

  • Завсегдатай
  • *****
  • 758
  • 39
  • Свободен для работы
На днях лечил 4 сайта на одном аккаунте, точно такая же проблема была, у заказчика не было возможности/желание все переносить на один аккаунт, риски он прекрасно понимал!, вообщем отключаем все сайты на аккаунте, я делал это с помощью htaccess "deny from all", ну а дальше, каждый сайт по очереди лечил и сохранял чистые бекапы с дампом, после чистки и наведение профилактических мер все запустили, все гууд! а права чтоб не менялись "средствами PHP это можно!", нужно отключить функцию chmod в disabled_function, там вообще много что не помешало бы отключить и включить....
Вылечу ваш сайт от заразы!
Хочешь проверить свой самописный модуль на баги? пожалуйста! предварительно ознакомтесь с правилами!

Мониторинг обменных пунктов WebMoney по выгодным условиям

*

draff

  • Практически профи
  • *******
  • 2739
  • 169
  • step by step
Искать cron , который запускает шелл .

*

voland

  • Профи
  • ********
  • 9365
  • 421
  • СКАЙП утерян! Пишите в телеграм @volandku
Только лечить, полностью.
И да, лучше разнести всё по разным аккаунтам

*

winstrool

  • Завсегдатай
  • *****
  • 758
  • 39
  • Свободен для работы
Искать cron , который запускает шелл .
Дело не в кроне!, есть такие функции, которые позволяют скрипту постоянно висеть в буфере и делать определенные проверки, в соответствие этих проверок и идет зараза!
Вылечу ваш сайт от заразы!
Хочешь проверить свой самописный модуль на баги? пожалуйста! предварительно ознакомтесь с правилами!

Мониторинг обменных пунктов WebMoney по выгодным условиям

*

SweetApple

  • Осваиваюсь на форуме
  • ***
  • 26
  • 0
Отключила сайты на аккаунте. Сейчас по одному буду лечить и смотреть в течение нескольких часов на его поведение. Если лишних файлов появляться не будет, буду браться за следующий сайт.

*

voland

  • Профи
  • ********
  • 9365
  • 421
  • СКАЙП утерян! Пишите в телеграм @volandku
Дело не в кроне!, есть такие функции, которые позволяют скрипту постоянно висеть в буфере и делать определенные проверки, в соответствие этих проверок и идет зараза!
Любопытно, каким образом, если не секрет?

*

winstrool

  • Завсегдатай
  • *****
  • 758
  • 39
  • Свободен для работы
Отключила сайты на аккаунте. Сейчас по одному буду лечить и смотреть в течение нескольких часов на его поведение. Если лишних файлов появляться не будет, буду браться за следующий сайт.
Было бы не плохо еще поставить снифер ведущий логи, по нему вы сможите выявить вектор и принцип заражения, возможно и дыру выявите, взломщик будет пытаться востановить доступ...

Любопытно, каким образом, если не секрет?
Эта тема не для паблик обсуждения!
Вылечу ваш сайт от заразы!
Хочешь проверить свой самописный модуль на баги? пожалуйста! предварительно ознакомтесь с правилами!

Мониторинг обменных пунктов WebMoney по выгодным условиям

*

draff

  • Практически профи
  • *******
  • 2739
  • 169
  • step by step
Дело не в кроне!, есть такие функции, которые позволяют скрипту постоянно висеть в буфере и делать определенные проверки, в соответствие этих проверок и идет зараза!
/dev/null ?


*

flyingspook

  • Moderator
  • *****
  • 3609
  • 236
Разделить надо по версиям Joomla 1.0 (про неё давно забыли и новые уязвимости могут не закрывать) отдельно и 1.5 отдельно (с ней все проще если пропатчить и настроить, то она работает хорошо и не взламывается) ну и на серверное ПО надо смотреть, судя по версиям там и PHP и MySQL старые надо смотреть не уязвимы ли они, в них находились уязвимости у PHP она в связке с CMS работает у мускула сама по себе во многих версиях встречается.
/dev/null ?
не только

*

SweetApple

  • Осваиваюсь на форуме
  • ***
  • 26
  • 0
Было выявлено 2 сайта-источника заразы. Один из них на Joomla 1, похоже, был взломан старый компонент DatsoGallery, второй на Joomla 1.5 - взломан mod_latestnews.
Эти сайты изолированны, перенесены на другой аккаунт. Остальные сайты после очистки поживают пока хорошо :)

*

SweetApple

  • Осваиваюсь на форуме
  • ***
  • 26
  • 0
Один из изолированных сайтов продолжает зажаться: появляется .htaccess, 53472b.php и дописывается бяка в index.php :( Хотя удалила все плохие файлы, прогнала Айболитом (уязвимости есть, но Joomla слишком старая, вряд ли есть обновления под нее).

*

SeBun

  • Практически профи
  • *******
  • 3076
  • 186
  • @SeBun48
уязвимости есть, но Joomla слишком старая, вряд ли есть обновления под нее
Собственно, ответ на ваш вопрос. Обновляйтесь на последнюю версию 3.6.5.
Оказываю услуги по Joomla | Миграция на Joomla 3.x | Администрирование | Разработка
Ник занят

*

winstrool

  • Завсегдатай
  • *****
  • 758
  • 39
  • Свободен для работы
Один из изолированных сайтов продолжает зажаться: появляется .htaccess, 53472b.php и дописывается бяка в index.php :( Хотя удалила все плохие файлы, прогнала Айболитом (уязвимости есть, но Joomla слишком старая, вряд ли есть обновления под нее).
Ставте снифер и смотрите откуда ноги растут!
Вылечу ваш сайт от заразы!
Хочешь проверить свой самописный модуль на баги? пожалуйста! предварительно ознакомтесь с правилами!

Мониторинг обменных пунктов WebMoney по выгодным условиям

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
Обновляйтесь на последнюю версию 3.6.5.
ох уж эти хирурги, им бы резать и резать. щас мы вам таблеточки пропишем - у вас само все отпадет :)

из-за одной малюсенькой дырочки обновлять Joomla? :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

SeBun

  • Практически профи
  • *******
  • 3076
  • 186
  • @SeBun48
из-за одной малюсенькой дырочки обновлять Joomla?
Я пишу исходя из своего опыта работы с такими сайтами. Как правило там не одна малюсенькая дырочка, а множество залитых дырок, которые порой даже дерутся между собой, прописывая коды блокировки запросов. Так что ответ мой корректен. Порой лучше вырезать и выкинуть, чем ставить имплантант и смотреть, приживется ли...
Оказываю услуги по Joomla | Миграция на Joomla 3.x | Администрирование | Разработка
Ник занят

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
ну я не говорю, что такой вариант не возможен совсем. конечно, если на сайте десять материалов и один модуль, то тогда конечно проще заново сайт сделать. а если это рабочий сайт, на котором тысячи клиентских учетных записей, приличное посещение и т.п. - то каким образом делать обновление быстро? имхо на это уйдет не один день, и гораздо больше денег, чем даже заказать услугу чистки.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

flyingspook

  • Moderator
  • *****
  • 3609
  • 236
ну я не говорю, что такой вариант не возможен совсем. конечно, если на сайте десять материалов и один модуль, то тогда конечно проще заново сайт сделать. а если это рабочий сайт, на котором тысячи клиентских учетных записей, приличное посещение и т.п. - то каким образом делать обновление быстро? имхо на это уйдет не один день, и гораздо больше денег, чем даже заказать услугу чистки.
в яблочко

*

ProtectYourSite

  • Живу я здесь
  • ******
  • 849
  • 48
Один из изолированных сайтов продолжает зажаться: появляется .htaccess, 53472b.php и дописывается бяка в index.php :( Хотя удалила все плохие файлы, прогнала Айболитом (уязвимости есть, но Joomla слишком старая, вряд ли есть обновления под нее).
Патчи поставлены для Joomla 1.5? Админка защищена? Что из посторонних расширений? И точно все вирусы удалены?

*

SweetApple

  • Осваиваюсь на форуме
  • ***
  • 26
  • 0
ProtectYourSite, посоветуйте, какие патчи поставить. Из посторонних расширений - aicontactsafe (форма обратной связи), Xmap (карта сайта), sh404SEF (формирует красивые ссылки). Айболитом прогнала - вредоносных файлов нет (кроме .htaccess, 53472b.php, которые каждые 10 минут добавляются после их удаления).

*

SweetApple

  • Осваиваюсь на форуме
  • ***
  • 26
  • 0
winstrool, какой снифер посоветуете?
По логам хостинга вижу только это:

178.210.90.90 - - [16/Dec/2016:14:15:05 +0300] "GET /?page-test HTTP/1.0" 200 8 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1 googlebot"
95.181.182.42 - - [16/Dec/2016:14:15:05 +0300] "GET /fa123.php HTTP/1.0" 200 7266 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36"

Эти строчки повторяются в логах регулярно, IP-адреса меняются.

*

SeBun

  • Практически профи
  • *******
  • 3076
  • 186
  • @SeBun48
SweetApple, заголовки сервера легко подделываются, IP можете не смотреть, юзаются прокси. Айболитом еще нужно уметь пользоваться, знать PHP и хотя бы базовые приемы проникновения. Шеллы у вас так и сидят, через них добавляются левые файлы вроде 53472b.php.

winstrool вам в начале объяснил, что имея на аккаунте один уязвимый сайт, вы подвергаете риску все остальные 11. Для того, что бы хоть как то решить проблему, нужно для начала разделить сайты. Возмите VPS недорогую, настройте так, что бы на одном аккаунте был один сайт. Либо возмите виртуальный хостинг на CloudLinux, она разделяет рабочее пространство. Вот только после того, как сайты будут изолированы друг от друга, работайте с каждым из них раздельно.

По вопросу устранения уязвимостей на 1.5 - 2.5 написано много, читайте, пробуйте. Не поймете - обращайтесь, подскажем.
« Последнее редактирование: 16.12.2016, 17:06:57 от SeBun »
Оказываю услуги по Joomla | Миграция на Joomla 3.x | Администрирование | Разработка
Ник занят

*

ProtectYourSite

  • Живу я здесь
  • ******
  • 849
  • 48
Лень искать официальные ссылки, патчи можно установить отсюда

*

SweetApple

  • Осваиваюсь на форуме
  • ***
  • 26
  • 0
SeBun, да, я этот проблемный сайт перенесла на отдельный аккаунт (оставшиеся сайты стали жить спокойно).
ProtectYourSite, спасибо большое! Патчи поставила, и вот уже полчаса на сайте тишина - ничего не добавляется :) Буду наблюдать за ним дальше.