Аудит безопасности сайта

   
post image Аудит безопасности сайта - это комплекс мер, направленных на устранение программных уязвимостей в структуре сайта. Подобные уязвимости открывает доступ к трём возможностям:
  • проникновение к закрытой конфиденциальной информации, например, логины и пароли личных кабинетов, содержание закрытых баз данных;
  • несанкционированное администрирование и модерирование сайта;
  • нарушение работы сайта (замедление, заспамленность, некорректные ссылки, исчезновение некоторых страниц и пр.), вплоть до полного обрушения.
Аудит безопасности сайта по своей сути является организацией защиты от хакерских атак, несанкционированного взлома, инжектирования в систему вредоносного программного обеспечения. Это трудоемкая задача. Ведь чтобы осуществить взлом, достаточно найти одну уязвимость, а здесь необходимо выявить все возможные уязвимости. Конечно, даже это не даст стопроцентной гарантии от перечисленных выше проблем, поскольку абсолютной защиты не существует. Можно учитывать только потенциальные направления атак, но не все возможные их варианты. Кроме того, вирусы, трояны, вредоносные ПО тоже не стоят на месте. Каждый день появляется что-то новое. Именно поэтому любая фирма не даст гарантии безопасности дольше, чем на полгода. Соответственно, если клиент заинтересован в стабильной бесперебойной работе сайта, то по-хорошему аудит безопасности сайта нужно проводить хотя бы раз в 7-8 месяцев. Считается, что проведение подобного аудита реже 1 раза в год понижает безопасность примерно на 30%.

Причины опасности

Безопасность ресурса может находиться под угрозой по разным причинам:
Очень распространенный вариант - конкуренты, многие компании не гнушаются вести в интернете такую скрытую войну
Другой вариант немного конспирологический - разработчики антивирусов, да и сами компании, занимающиеся улучшением безопасности сайтов, сами же создают причину своей повышенной востребованности
Третий вариант объединяет спонтанные хакерские атаки, когда искомый сайт не является целью, а просто «попадает под раздачу»
Четвёртый вариант - банальное воровство, только в онлайн-версии, например, когда воруется прибыль у интернет-магазинов

Стандартная схема аудита безопасности сайта

Важно подчеркнуть, что высокая безопасность сайта не даст стопроцентную защиту. Однако при возможной атаке хорошо защищенный ресурс пострадает гораздо меньше. Аудит безопасности сайта включает в себя следующие компоненты:
  1. Имитация атаки. Одним из лучших вариантов определить брешь в защите будет создание условий взлома, имитирование хакерского нападения. Разумеется, никакого реального вреда такая атака ресурсу не принесёт, но она проводится в режиме реального времени при полностью задействованном сайте, что приближает условия к настоящим. Сценарии атаки обновляются параллельно возникновению новых вирусов и способов взлома. Это позволяет оценить общую безопасность веб-ресурса.
  2. Мониторинг кода сайта. Здесь проводится всесторонний анализ плагинов и скриптов, особенно плагинов. О чём идёт речь? Структура сайта и его функционирование являются слишком сложными для того, чтобы быть описанными на машинном коде (низкоуровневом языке программирования). Для этого используется высокоуровневый язык программирования. По сути, скрипты и плагины - это программы, которые управляют другими, более простыми программами. Среди объектов высокоуровневого языка программирования множество весьма известных: Java Script, Паскаль, 1С, PHP (этот скриптовый язык активным образом применяется для создания веб-приложений) и т.д. Несмотря на то, что высокоуровневый язык программирования отличается универсальностью, полностью независимыми в структуре сайта являются немногие высокоуровневые программы, как правило, связанные с подсчётами и обработкой данных. Другие при работе вынуждены постоянно обращаться к ядру операционной системы. Однако высокоуровневые программы не заточены под какую-то конкретную ОС. Это возможное несоответствие в коде является одной из потенциальных брешей. Среди скриптов и плагинов плагины выделены неслучайно, поскольку при проблемах со скриптами программа выдаст сообщение об ошибке. А нарушение работы плагина может привести к более серьёзным ошибкам сегментации, когда происходит обращение к закрытым для записи зонам компьютерной памяти, либо при попытке изменить память вне протокола.
  3. Логическим продолжением является подробный анализ продуктов сторонних разработчиков, которые задействованы на сайте. Хакеры часто используют возникающие конфликты между такими программами и ОС.
  4. Затем проводится тестирование публикации. Безопасность сайта нередко оказывается под угрозой с момента его создания. Причиной тому - оказавшиеся в открытом доступе файлы бэкапа и системные файлы.
  5. Проверка хостинга и всего серверного программного обеспечения.

Конкретные примеры опасностей

Теперь более конкретно о возможных проблемах, которые превентивно решаются, когда проводится аудит безопасности сайта:
  1. Анализ возможности удаленного выполнения кода. Сейчас уже известный пример: загрузка изображений извне в библиотеку imagemagick. До обнаружения уязвимости в 2016 году это приложение активно использовалась на многих сайтах. В имени файла картинки может быть прописана Shell-команда, поскольку до недавнего времени imagemagick имел проблемы с фильтрацией имён файлов. Например, вставка такой команды, как https://example.com”|ls “-la, могла дать доступ к перечню файлов в библиотеке сайта. Суть в том, что со стороны в какое-то приложение, программный пакет забрасывается файл с прописанной командой, которая не подвергается фильтрации. Исполнение приложением такой команды приводит к расширению возможностей обычного пользователя до юзера веб-сервера.
  2. Анализ возможности инъекции SQL-кода. SQL - это язык программирования, предназначенный для управления базами данных и их корректировки. Например, если на сервер будет передан параметр id с элементом 1=1, то это будет ситуация, когда в запрос включили конструкцию языка SQL. Соответственно, изменится SQL-запрос системы. В данном случае, 1=1 может открыть доступ не к одной ячейке в базе данных, а ко всем. Существует множество приемов внедрения во внешние запросы SQL-элементов, которые позволяют не только читать базы данных полностью, но и изменять данные в них.
  3. Проверка уровня безопасности VIP-аккаунтов.
  4. Анализ того, насколько высока безопасность относительно внедрений класса Race Condition. Здесь все строится на аутентификации с использованием багов в коде приложений, классическая отправка вредоносных кодов здесь не применяется.
  5. Анализ защищенности логинов и паролей.
  6. Анализ надежности процедуры регистрации и многое другое.
Список проверок может расширяться по мере проведения аудита безопасности сайта.

Аудит безопасности сайта - определение стоимости

Несмотря на то, что аудит безопасности сайта не входит в комплектацию других аудитов, он является не менее важным и имеет полноценную стоимость. Безопасность есть крайне важный критерий, увеличивающий доверие к сайту. Соответственно, это повлияет и на позицию в рейтинге поисковиков, и на прибыльность. Стоимость данного вида работ сильно варьируется. Например, в интернете можно найти массу объявлений с ценниками 500-1000 рублей. Однако здесь имеется в виду аудит небольших простых сайтов. Как правило, этим занимаются частные лица, те же студенты компьютерных факультетов на подработке. Полноценный аудит массивного ресурса с требованием высокого уровня защиты ориентировочно обойдётся в 15 тысяч рублей. Стоимость сильно зависит от типа сайта. Вот примеры цен на аудит безопасности разных ресурсов (в рублях): Видно, что стоимость аудита сайтов, непосредственно связанных с потоками финансов, будет самая высокая. Интернет-магазин может оперировать большими суммами денег, и здесь безопасность должна быть максимальной.

x

ОСТАВИТЬ ЗАЯВКУ