Владельцы сайтов обычно задумываются об аудите безопасности в двух ситуациях: после взлома или перед крупным событием — запуском рекламы, интеграцией с банком, передачей сайта новому подрядчику. В обоих случаях хочется понять, насколько сайт защищён на самом деле. Но под словом «аудит» рынок продаёт очень разные вещи: от автоматического отчёта онлайн-сканера до многодневной ручной проверки. Разберём, из чего состоит полноценный аудит, что в нём действительно важно и как превратить его результаты в конкретные действия.
Зачем нужен аудит и когда его проводить
Аудит безопасности — это систематическая проверка сайта и окружающей инфраструктуры на наличие уязвимостей, ошибок конфигурации и слабых мест в процессах. Его цель — найти проблемы раньше, чем их найдут злоумышленники, и расставить приоритеты: что исправить сегодня, что в течение месяца, а что можно принять как допустимый риск.
Есть несколько ситуаций, когда аудит особенно оправдан. Во-первых, сайт достался «по наследству» от другого подрядчика или фрилансера, и никто точно не знает, что внутри. Во-вторых, сайт давно не обновлялся: за год-два без обновлений в популярных CMS и модулях накапливаются десятки известных уязвимостей. В-третьих, сайт обрабатывает платежи или много персональных данных — интернет-магазин, личный кабинет, онлайн-запись. В-четвёртых, сайт уже взламывали, и нужно убедиться, что все «двери» закрыты. Для активно развивающегося проекта разумная периодичность — раз в год и после крупных доработок.
Эти цифры — наша внутренняя статистика по сайтам, которые приходят на поддержку или редизайн. Они не претендуют на общерыночную точность, но хорошо показывают, что проблемы обычно лежат не в экзотических атаках, а в базовой гигиене.
Автоматическое сканирование и ручная проверка
Аудит почти всегда начинается с автоматических инструментов: сканеров уязвимостей, проверки версий CMS и модулей по базам известных уязвимостей, анализа конфигурации сервера и заголовков. Сканер за час проходит сотни типовых проверок и находит очевидные проблемы — устаревшие версии, открытые служебные файлы, отсутствие нужных HTTP-заголовков.
Но сканер не понимает логику конкретного сайта. Он не знает, что в личном кабинете пользователь может, поменяв цифру в адресе, увидеть чужой заказ. Не поймёт, что промокод можно применить многократно, а цену товара — подменить в запросе при оформлении. Не догадается, что у бывшего менеджера до сих пор есть доступ к админке. Такие проблемы находит только человек, который разбирается в устройстве сайта и думает как атакующий. Поэтому в нормальном аудите автоматика — это примерно 20–30% работы, остальное — ручной анализ.
Если вам предлагают «аудит безопасности за 3 000 ₽ за один день», скорее всего, это отчёт автоматического сканера. Он полезен как первый шаг, но не заменяет проверку логики сайта, доступов и процессов. Уточняйте, что именно входит в работу и сколько часов специалиста заложено.

Что проверяют: семь областей аудита
Полноценный аудит охватывает не только код сайта, но и всё, что вокруг него: сервер, домен, доступы, сторонние сервисы. Ниже — области, которые мы проверяем на каждом проекте.
1. CMS, модули и библиотеки
Сверяем версии ядра CMS, модулей, плагинов и фронтенд-библиотек с базами известных уязвимостей. Ищем заброшенные модули, которые больше не обновляются разработчиком, и «нулёвые» — взломанные версии платных расширений, скачанные с сомнительных сайтов. Последние нередко содержат встроенные бэкдоры. Отдельно проверяем, внесены ли изменения в ядро CMS: правки в ядре блокируют обновления и годами держат сайт на старой версии. Подробнее о стратегии обновлений — в статье про обновления CMS и плагинов.
2. Сервер и хостинг
Версия PHP и других компонентов, права на файлы и каталоги, настройки веб-сервера, открытые порты, доступ по SSH и FTP. Частая находка — FTP без шифрования с паролем, который не менялся несколько лет, и права на запись для всех файлов сайта, что позволяет вредоносному скрипту модифицировать любой файл.
3. Доступы и учётные записи
Кто имеет доступ к админке, хостингу, базе, домену. Сколько учётных записей с правами администратора, есть ли среди них сотрудники, которые давно ушли, или подрядчики, с которыми закончили работу. Включена ли двухфакторная аутентификация, защищена ли страница входа от перебора паролей.
4. Формы и пользовательский ввод
Все места, где пользователь может что-то отправить на сайт: формы заявок, поиск, комментарии, загрузка файлов, личный кабинет. Проверяем защиту от внедрения SQL-кода и скриптов, ограничения на типы и размеры загружаемых файлов, защиту от подделки запросов. Форма загрузки резюме, принимающая любые файлы и сохраняющая их в публичную папку, — классический путь взлома.
5. Бизнес-логика
Корзина, оплата, промокоды, личный кабинет, API для мобильного приложения или интеграций. Можно ли изменить цену в запросе, увидеть чужие данные, подтвердить заказ без оплаты, получить скидку несколько раз. Для интернет-магазинов это самая ценная часть аудита.
6. Данные и резервные копии
Где хранятся копии, доступны ли они из интернета, шифруются ли. Нет ли в публичных каталогах выгрузок базы, файлов с настройками, журналов с персональными данными, папок систем контроля версий.
7. Транспорт и заголовки
HTTPS на всех страницах, корректная переадресация с HTTP, срок действия сертификата, заголовки безопасности, защищающие от встраивания сайта во фреймы и от части атак через скрипты, параметры cookie авторизации.
Как проходит аудит: этапы работы
Чтобы аудит не превратился в бесконечное исследование, мы строим его по понятной схеме с фиксированными результатами на каждом этапе.
Согласование рамок
Определяем, что проверяется: только сайт или ещё сервер, почта, интеграции. Получаем доступы, договариваемся, можно ли проводить активные проверки на рабочем сайте или нужна копия на тестовом сервере.
Сбор информации
Инвентаризация: CMS и версии, модули, сторонние сервисы, учётные записи, интеграции с 1С, CRM и платёжными системами.
Автоматические проверки
Сканирование, сверка версий с базами уязвимостей, поиск открытых служебных файлов, проверка конфигурации сервера.
Ручной анализ
Проверка логики, форм, доступов, кода нестандартных доработок. Каждую находку подтверждаем, чтобы в отчёт не попадали ложные срабатывания.
Отчёт и разбор
Готовим отчёт с приоритетами и рекомендациями и проводим созвон, на котором объясняем находки владельцу и разработчикам простым языком.
Важный момент — активные проверки на рабочем сайте. Некоторые тесты создают нагрузку или оставляют тестовые записи в базе. Для интернет-магазина с живыми заказами мы предпочитаем проводить такие проверки на копии сайта, развёрнутой на тестовом сервере. Это добавляет полдня работы, но исключает риск помешать продажам.
Что входит в отчёт и как расставить приоритеты
Хороший отчёт — это не стостраничный документ с распечаткой сканера, а понятный список проблем, каждая из которых описана по единой схеме: что найдено, где, чем грозит, как исправить и насколько срочно. Для приоритизации удобно использовать простую шкалу из четырёх уровней.
| Уровень | Пример находки | Срок исправления |
|---|---|---|
| Критический | Публично доступна выгрузка базы с данными клиентов; уязвимость, позволяющая загрузить исполняемый файл | В течение суток |
| Высокий | Модуль с известной уязвимостью; доступ к чужим заказам в личном кабинете | В течение недели |
| Средний | Нет защиты от перебора паролей; устаревшая версия PHP | В течение месяца |
| Низкий | Отсутствуют отдельные заголовки безопасности; раскрытие версии сервера | В плановом порядке |
Типичный аудит корпоративного сайта даёт 10–25 находок, из которых критических — ноль-две, высоких — три-пять. Это нормальная картина, не повод для паники. Важно не количество, а то, что с находками происходит дальше.
После аудита: исправление и повторная проверка
Отчёт сам по себе сайт не защищает. Мы рекомендуем сразу после получения отчёта составить план исправлений с ответственными и сроками: критические проблемы — немедленно, высокие — в ближайшем спринте, средние и низкие — в плане работ на месяц. Если исправляет другой подрядчик, отчёт должен быть написан так, чтобы ему было понятно, что делать, без дополнительных пояснений.
После исправлений проводится повторная проверка: подтверждаем, что уязвимости закрыты и что исправления не сломали функциональность. Это занимает обычно полдня-день. Многие пропускают этот шаг, и через полгода выясняется, что половина находок «исправлена» только на словах.
Дальше важно поддерживать достигнутый уровень. Безопасность — это процесс: модули устаревают, появляются новые уязвимости, в команде меняются люди. Регулярные обновления через тестовое окружение, мониторинг изменений файлов, контроль учётных записей входят в нашу техническую поддержку. Базовые меры, которые можно внедрить и без аудита, описаны в статье о защите сайта от взлома.
Сколько стоит аудит безопасности?
Стоимость зависит от объёма: корпоративный сайт на популярной CMS — одна сумма, магазин с личным кабинетом, API и интеграциями — другая. Мы оцениваем работу после короткого знакомства с проектом и называем фиксированную цену до начала.
Может ли аудит сломать сайт?
При правильной организации — нет. Потенциально опасные проверки мы проводим на копии сайта, а на рабочем выполняем только безопасные тесты в согласованное время.
Нужен ли аудит новому сайту?
Если сайт делали с нуля опытные разработчики, базовые меры обычно уже заложены. Но перед запуском магазина с личным кабинетом и онлайн-оплатой проверка логики заказа и доступов всё равно полезна.
Главное
Аудит безопасности — это сочетание автоматических проверок и ручного анализа, охватывающее CMS и модули, сервер, доступы, формы, бизнес-логику, хранение данных и транспорт. Его результат — не толстый отчёт, а приоритизированный список проблем с понятными рекомендациями, после которого следуют исправления и повторная проверка.
Если сайт достался от другого подрядчика, давно не обновлялся или обрабатывает платежи и персональные данные, аудит стоит провести в ближайшее время. А чтобы не возвращаться к той же картине через год, закрепите результат регулярной поддержкой: обновлениями, мониторингом и контролем доступов.
Нужен сайт или интернет-магазин?
Обсудим задачу, подскажем подходящую платформу и оценим сроки и бюджет — бесплатно и без обязательств.
Обсудить проект
