Зачем проверять сайт на безопасность?
Уязвимый сайт — это риск для бизнеса: утечка данных клиентов, штрафы от РКН, потеря позиций в поиске. Вот конкретные угрозы:
Пошаговая проверка безопасности сайта
Проверьте HTTPS и SSL-сертификат
HTTPS (HyperText Transfer Protocol Secure) — протокол безопасной передачи данных. Без него информация между браузером пользователя и сервером передаётся в открытом виде.
Как проверить:
- В адресной строке должен быть значок замка 🔒
- URL должен начинаться с https://
- При клике на замок — «Соединение защищено»
Найдите политику конфиденциальности
Политика конфиденциальности — обязательный документ для сайтов, собирающих персональные данные. Она должна содержать:
- Какие данные собираются
- Цели обработки данных
- Как данные защищаются
- Контакты оператора ПДн
- Права пользователя (отзыв согласия, удаление)
Проверьте формы сбора данных
Каждая форма на сайте (регистрация, заказ, обратная связь) должна содержать:
- Чекбокс согласия на обработку ПДн (не предзаполненный!)
- Ссылку на политику конфиденциальности
- Понятный текст о целях сбора данных
Проверьте cookie-уведомление
Если сайт использует cookie (аналитика, авторизация, реклама), необходимо:
- Показывать баннер до загрузки скриптов аналитики
- Дать возможность отказаться от необязательных cookies
- Не использовать предзаполненные чекбоксы
- Сохранять выбор пользователя
Проанализируйте сторонние сервисы
Многие сайты подключают внешние сервисы: аналитику, рекламу, чаты. Проверьте:
- Какие счётчики установлены (Яндекс.Метрика, Google Analytics)
- Есть ли рекламные пиксели (Facebook, VK)
- Подключены ли внешние виджеты
- Упомянуты ли эти сервисы в политике
Автоматическая проверка за 2 минуты
QuickAudit проверит ваш сайт по всем пунктам и выдаст подробный отчёт
Проверить сайт бесплатноПроверка сайта на вирусы и вредоносный код
Заражённый сайт может распространять малварь, перенаправлять на фишинг или майнить криптовалюту в браузере посетителей.
Признаки заражения сайта
- Редиректы на сторонние ресурсы
- Незнакомые скрипты в коде страницы
- Антивирусы блокируют сайт у посетителей
- Резкое падение позиций в поиске
- Предупреждение «Сайт может угрожать безопасности» в браузере
- Неизвестные файлы на хостинге
Инструменты проверки на вирусы
- VirusTotal — проверяет URL по 70+ антивирусным базам
- Яндекс.Вебмастер → Диагностика → Безопасность и нарушения
- Google Search Console → Проблемы безопасности
- Sucuri SiteCheck — сканирует на малварь и блэклисты
Если сайт заражён: изолируйте его (закройте доступ), восстановите из чистого бэкапа, обновите CMS и плагины, смените все пароли, проверьте права доступа к файлам.
Проверка репутации домена
Домен может попасть в чёрные списки из-за спама, фишинга или предыдущего владельца. Это влияет на доставку писем и доверие пользователей.
Что проверить
- Чёрные списки (DNSBL) — Spamhaus, URIBL, SURBL
- Safe Browsing — Google и Яндекс помечают опасные сайты
- Возраст домена — через whois-сервисы (молодой домен = меньше доверия)
- История домена — web.archive.org покажет, что было на домене раньше
Как проверить чужой сайт перед вводом данных
Прежде чем вводить пароль или данные карты на незнакомом сайте:
Признаки мошеннического сайта
- Домен-подделка — sberbank.ru vs sberbenk.ru, amazon.com vs arnazon.com
- Недавняя регистрация — домен создан несколько дней/недель назад
- Нет контактов — отсутствует юридическая информация, адрес, телефон
- Давление на срочность — «Осталось 2 минуты!», «Ваш аккаунт заблокирован!»
- Грамматические ошибки — машинный перевод, опечатки
- Подозрительный URL в письме — наведите курсор, не кликая
Правило: Если получили письмо со ссылкой на «банк» или «госуслуги» — не переходите по ней. Откройте сайт вручную через поиск или закладки.
Заголовки безопасности (Security Headers)
HTTP-заголовки защищают от распространённых атак. QuickAudit проверяет их автоматически, но вот что они означают:
HSTS (Strict-Transport-Security)
Заставляет браузер всегда использовать HTTPS. Защищает от атак даунгрейда протокола.
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Content-Security-Policy (CSP)
Ограничивает источники скриптов, стилей, изображений. Главная защита от XSS-атак.
X-Content-Type-Options
Запрещает браузеру «угадывать» тип файла. Защищает от MIME-sniffing атак.
X-Content-Type-Options: nosniff
X-Frame-Options
Запрещает встраивать сайт в iframe на других доменах. Защита от clickjacking.
Referrer-Policy
Контролирует, какая информация передаётся при переходе по ссылке. Защищает приватность.
Permissions-Policy
Отключает API браузера (геолокация, камера, микрофон), если они не нужны.
Защита cookies
Флаги безопасности для cookie-файлов:
- Secure — передача только по HTTPS
- HttpOnly — недоступность из JavaScript (защита от XSS)
- SameSite=Strict или Lax — защита от CSRF-атак
Пример: Set-Cookie: session=abc123; Secure; HttpOnly; SameSite=Strict
Частые ошибки при защите сайта
Ошибка №1: SSL установлен, но сайт открывается и по HTTP. Настройте редирект!
Пример редиректа для nginx:
server { listen 80; return 301 https://$host$request_uri; }
Другие распространённые ошибки:
- Mixed content — часть ресурсов (картинки, скрипты) загружается по HTTP. Браузер показывает предупреждение
- Предзаполненные чекбоксы — согласие должно быть активным действием пользователя
- Политика без контактов оператора — обязательно укажите наименование, адрес, email
- Аналитика до согласия — Яндекс.Метрика и GA не должны загружаться до принятия cookie-баннера
- Устаревший TLS — используйте TLS 1.2 или 1.3, отключите TLS 1.0/1.1
- Истёкший SSL — настройте автопродление (certbot renew)
Что проверяет QuickAudit автоматически
- SSL-сертификат — наличие, срок действия, цепочка доверия
- HTTP-заголовки — HSTS, CSP, X-Content-Type-Options, X-Frame-Options
- Политика конфиденциальности — поиск документа на сайте
- Формы и согласия — проверка чекбоксов и ссылок на политику
- Cookie-баннер — наличие уведомления о cookies
- Счётчики и трекеры — какие внешние скрипты загружаются
- Контактная информация — наличие данных оператора
Что требует ручной проверки: качество текста политики, корректность согласий для разных целей обработки, соответствие реальных процессов задекларированным.
Часто задаваемые вопросы
Как часто нужно проверять безопасность сайта?
Минимум раз в квартал + после каждого обновления CMS, плагинов или серверного ПО. Для критичных сайтов (e-commerce, финансы) — еженедельно.
Достаточно ли бесплатного SSL от Let's Encrypt?
Да. Бесплатные сертификаты Let's Encrypt обеспечивают тот же уровень шифрования, что и платные. Разница — в типе валидации (DV vs OV/EV) и гарантиях страхования, которые для большинства сайтов не критичны.
Нужен ли cookie-баннер, если я использую только Яндекс.Метрику?
Да. Яндекс.Метрика использует cookies и собирает данные, которые могут идентифицировать пользователя (IP, параметры браузера). По 152-ФЗ это требует информированного согласия.
Как проверить, не попал ли мой сайт в чёрный список?
Проверьте URL на VirusTotal, статус в Google Search Console (раздел «Проблемы безопасности»), и в Яндекс.Вебмастере («Диагностика» → «Безопасность»).