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

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

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

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

Вот несколько профилактических советов, которые не уберегут вас, но хотя бы помогут снизить риск:

1. Пароль

Начну с самого банального и уже миллион раз сказанного. Никогда не используйте простые пароли! 123456, qwerty, password, admin, test и т.д. ЗАБУДЬТЕ ИХ НАВСЕГДА! Пароль должен состоять из случайного набора букв и цифр. Записывайте эти пароли и меняйте как можно чаще. И вообще, для кого я в левой колонке генератор паролей повесил?

Для поднятия настроения, которое дальше я вам буду усиленно портить, вот анекдот в тему:

— Извините, Ваш пароль используется более 30 дней, необходимо выбрать новый!
— розы
— Извините, слишком мало символов в пароле!
— розовые розы
— Извините, пароль должен содержать хотя бы одну цифру!
— 1 розовая роза
— Извините, не допускается использование пробелов в пароле!
— 1розоваяроза
— Извините, необходимо использовать как минимум 10 различных символов в пароле!
— 1грёбанаярозоваяроза
— Извините, необходимо использовать как минимум одну заглавную букву в пароле!
— 1ГРЁБАНАЯрозоваяроза
— Извините, не допускается использование нескольких заглавных букв, следующих подряд!
— 1ГрёбанаяРозоваяРоза
— Извините, пароль должен состоять более чем из 20 символов!
— 1ГрёбанаяРозоваяРозаБудетТорчатьИзЗадаЕслиМнеНеДашьДоступПрямоБляСейчас!
— Извините, этот пароль уже занят!

2. Логин администратора и других пользователей

Про пароли и так вроде бы все всё знают, поэтому двигаемся далее. Знаете ли вы, что большинство сайтов на MODX имеют пользователя admin, причем это пользователь с административными правами? У вас не так? Поздравляю! Но большинство просто не догадывается использовать какой-то другой логин для администратора, потому что "так было в уроках". Ну а теперь представьте, что у вас администратор с логином admin и паролем 123456... И уверяю вас, таких умников хватает. Ах, да, вторым по популярности пользователем является manager... Беден и скуп русский язык на английские слова.

Кстати, вы уже 18666 посетитель, который неожиданно для себя решил попробовать подобрать логин и пароль к этому сайту :)

3. Вход в административную панель

В сравнении с предыдущими двумя пунктами это не менее серьезно, но чтоб вы знали, 99,99% сайтов MODX Evolution имеют один и тот же адрес панели управления, и это не смотря на то, что теперь его можно легко менять. Смена адреса админки конечно же не гарантирует 100% защиты сайта, но потенциальному взломщику может усложнить процесс. Если вы настоящий параноик, вы знаете что нужно делать ;)

Для остальных рассказываю:

1. Переименовываете папку manager, например в reganam
2. В файле assets/cache/siteManager.php меняете manager на reganam
3. В файле robots.txt меняете запись Disallow: /manager/ на Disallow: /reganam/

4. Не афишируйте на какой CMS сделан ваш сайт

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

5. Обновляйте CMS своевременно

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

6. Не используйте сомнительные дополнения

Скрипты, модули, плагины, сниппеты - сколько всего интересных разработок, которые так и хочется использовать в своих проектах! Фу-фу-фу! Очень часто мы сами закачиваем вирусы на свой сервер. Это тот случай, когда самым опасным и уязвимым элементом сайта является его администратор!

7. Выбирайте правильный хостинг

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

Помимо непосредственной безопасности сервера, о которой вам никто ничего рассказывать не будет, у виртуальных хостингов есть еще одна повсеместная беда. Общественные IP адреса, которые вам выдают на виртуальном хостинге, очень часто попадают в блеклисты. Происходит это по понятным причинам, чем больше сайтов на одном IP тем выше вероятность заражения какого-нибудь сайта и как следствие блокировки IP. По этой причине НИКОГДА не заводите почтовый сервер на виртуальном хостинге. А если все таки нужна почта на домене, лучше используйте яндексовскую почту для доменов. Хостеры как могут борятся с этой бедой, но за блеклистами следует следить и самостоятельно, например, с помощью этого сервиса, и напоминать хостеру при необходимости.

Риск попадания в блеклисты резко снижает наличие выделенного IP, но за все в этом мире надо платить. 

8. FTP и SSH

Настоящий параноик хочет только одного, да и этого немного, да почти что ничего, а конкретно он хочет защищенного соединения с сервером. Поэтому, если есть возможность, которую должен предоставить хостер, отказывайтесь от FTP в пользу SSH. Что это и с чем едят, советую изучить заочно. Скачайте SSH-клиент, например WinSCP и наслаждайтесь процессом. Если же ваш хостинг не предоставляет вам такого удовольствия, а предлагает влачить жалкое существование по FTP каналу, то ни в коем случае не храните свои пароли в FTP-клиенте. И пусть вам сопутствует удача.

9. Контролируйте логи, системные сообщения, проверяйте наличие посторонних файлов

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

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

10. Бекапы

Делайте бекапы. И этим все сказано. Кто не сохранился, я не виноват.

11. Личная гигиена

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


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

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

2. Смените все пароли!

3. Просканируйте файлы сайта скриптом AI-bolit или попросите об этом своего хостера. Анализ подозрительных файлов поможет выявить угрозы.

4. Проверьте антивирусом все компьютеры, с которых осуществлялся доступ к сайту. Надеюсь, объяснять, что проверяемый компьютер должен быть на это время отключен от интернета, не нужно?

5. Помните, я говорил вам про бекапы? Если выявить и устранить угрозу не получается, восстановите сайт из резервной копии и обратитесь за помощью к специалистам.

6. Обновите CMS до актуальной версии.

Отзывы, советы и замечания приветствуются.

Поделитесь ссылкой

Статистика

Яндекс цитирования
© 2011 - 2023 Школа MODX
Напишите нам в Telegram