Безопасное администрирование веб-ресурсов как аспект информационной безопасности

Первый этап проектирования, создания или использования безопасного веб-сайта — это обеспечение максимального уровня безопасности сервера, на котором он размещается. Основным компонентов любого веб-сервера является операционная система. Обеспечить ее безопасность сравнительно просто: достаточно вовремя устанавливать последние обновления системы безопасности.
Первый этап проектирования, создания или использования безопасного веб-сайта — это обеспечение максимального уровня безопасности сервера, на котором он размещается.
Основным компонентов любого веб-сервера является операционная система. Обеспечить ее безопасность сравнительно просто: достаточно вовремя устанавливать последние обновления системы безопасности.
Следует помнить, что хакеры также склонны автоматизировать свои атаки, используя вредоносное ПО, перебирающее один сервер за другим в поисках сервера, где обновление устарело или не было установлено. В связи с этим рекомендуется следить за тем, чтобы обновления устанавливались своевременно и правильно; любой сервер, на котором установлены устаревшие версии обновлений, может подвергнуться атаке.
Также следует вовремя обновлять все программное обеспечение, работающее на веб-сервере. Любое ПО, не относящееся к необходимым компонентам (например, DNS-сервер либо средства удаленного администрирования наподобие VNC или служб удаленных рабочих столов), следует отключить или удалить. Если средства удаленного администрирования все же необходимы, следите за тем, чтобы не использовались пароли по умолчанию или пароли, которые можно легко угадать. Это замечание относится не только к средствам удаленного администрирования, но и к учетным записям пользователей, маршрутизаторам и коммутаторам.
Следующий важный момент — это антивирусное программное обеспечение. Его использование является обязательным требованием для любого веб-ресурса вне зависимости от того, используется в качестве платформы Windows или Unix. В сочетании с гибким межсетевым экраном антивирусное программное обеспечение становится одним из самых эффективных способов защиты от кибератак. Когда веб-сервер становится целью атаки, злоумышленник без промедления старается загрузить инструменты для взлома или вредоносное программное обеспечение, чтобы успеть использовать уязвимость систем безопасности. При отсутствии качественного антивирусного обеспечения уязвимость системы безопасности может долгое время оставаться незамеченной и привести к нежелательным последствиям.
Самым оптимальным вариантом при защите информационных ресурсов является многоуровневый подход. На переднем фланге — межсетевой экран и операционная система; стоящий за ними антивирус готов заполнить любые возникающие бреши.
Исходя из параметров операционной системы и функционала веб-сервера можно привести следующие общие приёмы защиты от кибератак:
• Не устанавливайте ненужные компоненты. Любой компонент несет с собой отдельную угрозу; чем их больше, тем выше суммарный риск.
• Своевременно устанавливайте обновления системы безопасности для операционной системы и приложений.
• Используйте антивирус, включите автоматическую установку обновлений и регулярно проверяйте правильность их установки.
Некоторые из этих задач могут казаться затруднительными, но следует помнить о том, что для атаки достаточно единственной бреши в системе безопасности. Потенциальные риски при этом — кража данных и трафика, занесение IP-адреса сервера в черные списки, ущерб репутации организации и нестабильность веб-сайта.
По степени критичности уязвимости как правило выделяют 5 уровней которые определяют в каком состоянии на данный момент находится веб-ресурс (таблица 1).Обычно злоумышленники, исходя из своих целей и квалификации стараются закрепиться на взломанном ресурсе и замаскировать свое присутствие. Взлом сайта не всегда можно распознать по внешним признакам (мобильный редирект, спам-ссылки на страницах, чужие баннеры, дефейс и пр). При компрометации сайта этих внешних признаков может и не быть. Ресурс может работать в штатном режиме, без перебоев, ошибок и попадания в “черные” списки антивирусов. Но это отнюдь не означает, что сайт в безопасности. Проблема в том, что заметить факт взлома и загрузки хакерских скриптов без проведения аудита безопасности – сложно, а сами веб-шеллы, бэкдоры и другие инструменты хакера могут достаточно долго находиться на хостинге и не использоваться по назначению. Но однажды наступает момент, и они начинают сурово эксплуатироваться злоумышленником, в результате чего у владельца сайта возникают проблемы. За спам, размещение фишинговых страниц сайт блокируют на хостинге (или отключают часть функционала), а появление редиректов или вирусов на страницах чревато баном со стороны антивирусов и санкциями со стороны поисковых систем. В подобном случае необходимо в срочном порядке “лечить” сайт, а затем ставить защиту от взлома, чтобы сюжет не повторялся. Зачастую штатные антивирусы не опознают некоторые виды троянов и веб-шеллов, причиной тому может быть несвоевременное обновление либо устаревшее программное обеспечение. При проверке веб-ресурса на вирусы и скрипты следует пользоваться антивирусными программами различной специализации, в этом случае не найденный одной антивирусной программой троян может быть обнаружен другой. На рисунке 1 приведён пример отчёта проверки антивирусного программного обеспечения, здесь важно отметить тот факт, что другие антивирусные программы не смогли обнаружить вредоносное программное обеспечение.
Такие троянские программы как «PHP/Phishing.Agent.B», «Linux/Roopre.E.Gen», «PHP/Kryptik.AE», используется злоумышленниками для удаленного управления компьютером. Такие программы часто проникают на веб-сайт через электронную почту, бесплатное программное обеспечение, другие веб-сайты или чат-комнату. Большую часть времени, такая программа выступает в качестве полезного файла. Тем не менее, это вредоносная троянская программа, которая собирает личную информацию пользователей и передает ее злоумышленникам. Кроме того, она может автоматически подключаться к определенным веб-сайтам и загружать другие виды вредоносного ПО в систему. Чтобы избежать обнаружения и удаления, Linux/Roopre.E.Gen может отключать средства безопасности. Данная троянская программа разработана с применением технологии руткит, которая позволяет ей скрываться внутри системы.
«PHP/WebShell.NCL» является троянской программой, которая может выполнять различные функции, например, удаление системных файлов, загрузку вредоносных программ, скрывать существующие компоненты или загруженную личную информацию и другие данные. Эта программа может обойти общую антивирусную проверку и проникнуть в систему без ведома пользователя. Данная программа способна установить бэкдор для удаленных пользователей, чтобы взять контроль над зараженным веб-сайтом. С помощью этой программы злоумышленник может шпионить за пользователем, управлять файлами, устанавливать дополнительное программное обеспечение, а также контролировать всю систему. «JS/TrojanDownloader.FakejQuery.A» – троянская программа основными целями атак которой являются сайты, разработанные с использованием CMS «WordPress» и «Joomla». Когда злоумышленник взламывает веб-сайт, он запускает скрипт, который имитирует инсталляцию плагинов «WordPress» или «Joomla», а затем внедряет вредоносный JavaScript-код в файл «header.php».

Рисунок 1. Пример отчёта проверки антивирусного ПО

К сожалению, хакерские скрипты по внешним признакам или внешними сканерами не обнаруживаются. Поэтому ни антивирусы поисковых систем, ни антивирусное программное обеспечение, установленное у веб-мастера на компьютере, не сообщит о проблемах безопасности сайта. Если скрипты размещены где-нибудь в системных каталогах сайта (не в корневом и не в images) или инжектированы в существующие скрипты, случайно заметить их также не удастся.
Поэтому необходимыми мерами для защиты веб-ресурсов могут быть следующие рекомендации:
1. Регулярное резервное копирование всего содержимого файловой системы, баз данных и журналов событий (лог-файлов).
2. Регулярное обновление системы управления контентом до последней стабильной версии CMS (системы управления контентом).
3. Использование сложных паролей. Требования к паролю: пароль должен содержать не менее восьми символов, при создании пароля должны быть использованы символы верхнего и нижнего регистра, а также специальные символы.
4. Обязательное использование дополнений или плагинов безопасности для предотвращения атак типа XSS-атака или SQL-инъекции.
5. Использование и установка дополнений (плагинов, шаблонов или расширений) должна осуществляться только с проверенных источников или официальных веб-сайтов разработчиков.
6. Сканирование файловой системы не менее 1 раза в неделю антивирусными программами и с использованием актуальных сигнатур баз данных.
7. Предусмотреть использование механизма «CAPTCHA» для защиты веб-сайта от взлома методом перебора паролей при авторизации и ввода данных в любую форму запросов (форма обратной связи, поиск и др.).
8. Ограничить возможность входа в административную панель управления веб-сайта после определенного количества неудачных попыток.
9. Корректно настроить политику безопасности веб-сайта через файл конфигурации веб-сервера с учетом таких параметров, как:
• ограничить количество IP-адресов, используемых администратором для доступа в административную панель управления веб-сайтом в целях предотвращения доступа к ней с посторонних IP-адресов;
• запретить передачу любых тегов любыми способами, кроме оформления текста (например p b i u) для предотвращения XSS-атак.
10. Перемещение файлов, содержащих информацию о доступе к базе данных, FTP-доступу и т.д., из директорий по умолчанию в другие с последующим переименованием данных файлов.
Даже не совсем опытному хакеру взломать сайт на joomla достаточно просто, если вы не предусмотрели защиты. Но, к сожалению, часто вебмастера откладывают защиту от взлома сайта на потом, считая это делом не первой необходимости. На восстановление доступа к своему сайту уйдет значительно больше времени и усилий, чем на принятие мер по его защите. Безопасность веб-ресурса — задача не только разработчика и хостера, который обязан обеспечить максимальную защищённость серверов, но и администратора сайта.