Приветствую, когда первый раз взломали мой сервер я и не заметил, так продолжалось несколько месяцев, пока Яндекс не выкинул мой сайт из поиска и не прислал письмо в webmaster.yandex.ru — в письме было написано, что мой сайт содержит вредоносный код.
Я начал проверять файлы сайта, оказалось, фалы были изменены и было добавлено более 3000 страниц как бы с форумом с вопросами, ответами и ссылками скорее всего на вирусы.
В таком случае можно восстановить бэкап, но кто держит бэкапы четырехмесячной давности?!
Было принято решение сохранять базы данных, с помощью сторонних утилит экспортировать все «что только можно унести» например картинки и другую информацию (лучше вообще не брать файлы с зараженного сервера т.к. они могут быть заражены), и переделывать сайты заново используя чистые/новые дистрибутивы CMS что я использовал.
Для сайтов на CMS WordPress все довольно не сложно, я воспользовался стандартным плагинами импорта/экспорта.
Главное что я понял не ищите темы оформления WordPress в открытом доступе (на различных Warez сайтах) т.к. в большинстве случаев в них вшиты бэкдоры (backdoor), веб шеллы (web shell) — которые дают полный доступ к вашим файлам на сервере.
Хакер может не заметно изменить ваши сайты и продвигать свои страницы в поисковиках — в лучшем случае.
В худшем, хакер может вас шантажировать, если вас взломали несколько месяцев назад — бэкап вам не поможет, вы можете потерять все данные безвозвратно не выполнив его требований, так же хакер может выложить все ваши сайты с базами данных в открытый доступ, а если вы выполните требования (обычно заплатить некую сумму денег), мало вероятно, что хакер оставит вас в покое или не оставит бэкдор на всякий случай. Какие бы здравомыслящие речи он не толкал.
Бежать в Полицию бесполезно!
Спасти данные из CMS Prestashop можно воспользовавшись Store Manager for PrestaShop, некоторые таблицы можно копировать напрямую из БД, но не трогайте таблицы с модулями и темами.
Основные правила защиты сервера от взлома:
- Не скачивайте темы, плагины и модули бесплатно в открытом доступе, как показала практика даже Ai-Bolit (антивирус для скриптов) находит не все дыры. Покупайте на складчике или у разработчика (вероятность заражения ниже).
- Периодически проверяйте сайты Ai-Bolit’ом или Антивирусом Manul от Яндекса (Ai-Bolit мощнее и есть версия для Windows) — это не панацея! Сверяйте со свежими дистрибутивы CMS (той же версии), что вы используете т.к. некоторые файлы могут быть приняты за вирусы, хоть они ими и не являются.
- Меняйте порт SSH на более длинный от 4000 т.к. есть авто-боты (как бы комично это не звучало) сканирующие сервера и если у вас стандартный порт могут начать Атаку брутфорс — подбор пароля перебором символов и/или слов — это может жестко нагрузить ваш сервер и все будет тормозить. Если вы измените порт это вас защитит от авто-ботов, они обычно перебирают порты не более 3000, но если хакер лично до вас решил докопаться он будет перебирать порты, и найдет тот самый 4ХХХ измененный и начнет Атаку брутфорс, отсюда возникает следующее правило.
- Пароль должен содержать не только заглавные и прописные буквы, цифры, но и спец символы типа: !»№;%:?*()_+!@#$%^&*_+ — не знаю все ли они разрешены, но тройка другая спец символов увеличит время подбора пароля — любой пароль можно подобрать, но чем он длиннее тем дольше потребуется времени, все зависит от мощностей железа/канала связи, вашего и хакера.
- Помните, что дыры и шеллы дают доступ к вашим файлам без всяких паролей, даже наоборот, как только вы установите зараженный модуль или тему вы открываете доступ к файлам на сервере, а некоторые файлы содержат пароли к базам данных, иногда пароли не сильно отличаются т.к. люди не любят запоминать длинные пароли — а это обязательно (иметь разные длинные, хорошие пароли).
- Как мне сказали в поддержке моего сервера заражение базы данных встречается редко, хакер может добавить например в таблицу базы модуля меню, загрузку зараженного файла.
Дополнение:
- Меняйте стандартные пути к Админ панели, например для WordPress есть плагины на подобие «Rename wp-login.php» — заменяет ссылку авторизации, минимальная защита от «Автоботов».
- Установите и настройте ZEOS Antivirus — не заменимая вещь, если вас часто взламывают, даже если нет, установите. Не сложная утилита, делает отпечаток всех ваших файлов на сервере, если что то было удалено или изменилось, вам придет письмо на eMail с указанием файлов и что с ними произошло. Делаете cron задание и например раз в 60 мин проверку файлов на сервере, необходима настройка, допустим что бы не приходили письма об изменении во временных папках типа «temp» их можно исключить.
Автор сделал его как дополнение для DLE, но он работает с любыми CMS.
Скачать ZEOS Antivirus с нашего сервера + инструкция (Для зарегистрированных).
Буду рад, если те, кто уже «наступал на грабли в этой теме», оставит комментарий с пожеланиями или дополняющий мой опыт.