В последнее время в национальном сегменте сети Интернет все чаще происходят взломы различных интернет-ресурсов, относящихся как к частному сектору, так и к государственному.
Чаще всего причинами подобных ситуаций становятся ошибки администраторов и/или разработчиков интернет-ресурсов.
Обобщенные результаты анализа указанных инцидентов позволяют выделить распространенные проблемы и ошибки, допущенные администраторами и разработчиками. Эти проблемы и ошибки с радостью используют злоумышленники.
Проблема 1 — ПРОСТЫЕ ПАРОЛИ
Много пользователей интернет-ресурсов, в том числе и администраторов, устанавливают простые и ненадежные пароли. В результате чего, причиной взлома становится примитивный подбор пароля. Особенно благодарны взломщики, когда установлен один и тот же пароль для нескольких аккаунтов/сервисов.
И вот он, полностью защищенный интернет-ресурс, по мнению администратора, попадает в руки к злоумышленнику. Далее описывать сценарии развития событий бессмысленно, так как сервис принадлежит уже злоумышленнику.
Рекомендации, позволяющие значительно снизить вероятность возникновения данной проблемы:
1. Для пользователей и администраторов:
- Используйте длинные пароли, желательно не менее 8-10 символов для непривилегированных пользователей
и 12-15 с административными правами. - Чередуйте регистры верхнего и нижнего уровня, а также добавляйте спецсимволы.
- Не используйте один пароль для разных сервисов.
- Не применяйте пароли, которые ранее использовались в каких-либо сервисах.
- Не используйте пароли, содержащие словарные слова («password»), повторяющиеся наборы букв («passpass»), буквенные или числовые последовательности («aaa», «123»), ники, имена (собственное имя, имена родственников), клички домашних животных, романтические отсылки (нынешние или прошлые), биографическую информацию.
- Для удобства хранения паролей используйте менеджеры паролей, которые позволяют хранить их в шифрованном виде.
2. Для разработчиков:
- При разработке различных сервисов не допускать обязательного приведения пароля к одному регистру, так как, например, пароли «Passwd» и «passwd» для сервиса будут одинаковы.
- Не допускать случаев, в которых проверка правильности введенного пароля происходит путем сравнения хеш-сумм фиксированного количества символов. Например, если хеш формируется для первых 8 символов, то пароли «developer», «develope» и «developerasdasd» будут иметь идентичную хеш-сумму и пройдут проверку.
- При обращении с паролями, придерживаться тех же рекомендаций что и для администратора, указанных выше.
Проблема 2 — УСТАРЕВШЕЕ ПО
Со временем любое программное обеспечение (далее ПО) устаревает и заинтересованные лица находят в нем уязвимости. Добросовестные исследователи сообщают разработчикам ПО о найденных уязвимостях, а кто-то использует их в корыстных целях.
Закрытие уязвимостей всегда сопровождается выпуском новой версии ПО или патчем.
Поэтому для решения данной проблемы и снижения вероятности взлома сервиса необходимо постоянно производить обновление ПО и устанавливать последние версии и патчи.
Проблема 3 — НАЛИЧИЕ НА СЕРВЕРЕ ЛИШНЕГО ПО
Часто встречаются ситуации, когда на сервере установлено не относящееся к основной выполняемой задаче ПО. Оно могло быть установлено вместе с какими-то нужными программами или осталось от предыдущего администратора, а разбираться что за ПО и для чего оно предназначено, как всегда, не хватает времени, или срабатывает принцип — «не трогай, пока работает».
По иронии, в ряде инцидентов именно такое ПО и служит точкой проникновения злоумышленника в инфраструктуру организации.
Для закрытия этой проблемы рекомендуем:
- Вести учет установленного ПО с указанием версий и предназначения.
- Удалять не используемое ПО.
Проблема 4 — НАЛИЧИЕ НЕАКТУАЛЬНОГО ИЛИ ИЗБЫТОЧНОГО ПРОГРАММНОГО КОДА
Многие разработчики используют фреймворки или библиотеки сторонних разработчиков, что упрощает разработку и увеличивает ее скорость. Но не все задумываются об их избыточности и безопасности. Еще хуже, когда в проекте используются устаревшие и/или снятые с поддержки версии .
Оставленный разработчиками в проекте неактуальный или не используемый в работе сервиса программный код, даже закомментированный (например, функции), может стать причиной компрометации сервиса.
Для снижения вероятности компрометации ресурса рекомендуем:
- Использовать самые последние версии подключаемых библиотек.
- Удалять неактуальный и неиспользуемый программный код.
В следующих статьях мы расскажем о других проблемах и ошибках.
Для удобства и своевременного оповещения о новостях подписывайтесь на нас в социальных сетях:
linkedin.com
facebook.com