Коротко. Проверка сайта на безопасность — это аудит нескольких слоёв: HTTPS и сертификат, security-заголовки, Content-Security-Policy, флаги cookies, отсутствие вредоносного кода и утечек файлов. Быстрая онлайн-проверка занимает пять минут через бесплатные сканеры, полный аудит по чек-листу владельца — час-два. В статье разобраны оба сценария по шагам.
Что входит в проверку сайта на безопасность
Безопасность сайта — несколько независимых слоёв: сайт с идеальным сертификатом может раздавать заражённые скрипты. Проверка идёт по всем уровням:
- HTTPS и TLS — шифрование, валидный сертификат, свежие протоколы.
- Security-заголовки — HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy.
- Content-Security-Policy — барьер против XSS и чужих скриптов.
- Cookies — флаги HttpOnly, Secure и SameSite на сессионных cookies.
- Вредоносный код — инжекты, скрытые редиректы, блэклисты.
- Порты и сервисы — наружу смотрят только 80 и 443.
- Утечки — открытые .git, .env, дампы и бэкапы.
Первые пять слоёв проверяются онлайн, порты и утечки — только с доступом к серверу.
Проверка сайта на безопасность онлайн: за 5 минут
Быстрый аудит — пять инструментов из браузера, без установки и регистрации.
- Сканер /security — заголовки, HTTPS-редирект, cookies, грейд A–F; сразу видно слабейший слой.
- SSL-чекер /ssl — срок сертификата, полнота цепочки, версии TLS. Просроченный или самоподписанный — стоп-сигнал.
- Анализатор /csp — разбор Content-Security-Policy по директивам, поиск опасных разрешений.
- Проверка /cookie — все cookies сайта и флаги HttpOnly, Secure, SameSite.
- Проверка /malware — вредоносные скрипты, редиректы и блэклисты за один проход.
Нужен второй взгляд — сравнение сторонних инструментов в обзоре лучших сканеров безопасности сайтов.
Начинайте с комплексного сканера, а не точечных проверок: грейд A–F сразу указывает слабый слой и избавляет от диагностики вслепую.
Чек-лист для владельца сайта
Онлайн-инструменты видят сайт снаружи; дальше — восемь блоков владельца.
HTTPS и сертификат
Весь трафик — по HTTPS с редиректом. Сертификат валиден, цепочка полная, продление автоматизировано: Let's Encrypt живёт 60–90 дней, сломанный cron — простой. TLS 1.0/1.1 отключены. Проверка — /ssl.
Security-заголовки
Минимум: Strict-Transport-Security, X-Content-Type-Options, X-Frame-Options, Referrer-Policy. Проверка из терминала:
curl -I https://example.com
Здоровый ответ:
strict-transport-security: max-age=31536000; includeSubDomains x-content-type-options: nosniff x-frame-options: DENY referrer-policy: strict-origin-when-cross-origin content-security-policy: default-src 'self'; frame-ancestors 'none'
Что делает каждый и как включить на nginx, Apache или в CMS — в полном гайде по security-заголовкам.
Content-Security-Policy
CSP — главная браузерная защита от XSS: исполняются только скрипты из разрешённых источников. Избегайте unsafe-inline в script-src, добавьте frame-ancestors против кликджекинга. Проверка — /csp.
Cookies
Сессионным cookies нужны HttpOnly (недоступны из JavaScript), Secure (только по HTTPS) и SameSite=Lax или Strict (защита от CSRF). Аудит — /cookie.
Актуальность CMS и плагинов
Большинство взломов идёт через известные дыры в устаревших плагинах и темах. Обновляйте ядро и расширения минимум раз в месяц, неиспользуемые плагины удаляйте полностью: отключённый код всё ещё атакуем.
Пароли и 2FA
Уникальные пароли от 12 символов для админки, хостинга, базы и FTP; менеджер паролей вместо повторов. 2FA — везде, где поддерживается. У бывших подрядчиков доступа быть не должно.
Бэкапы
Автокопии файлов и базы — минимум ежедневные, вне сервера сайта. Раз в квартал проверяйте восстановление: неразвёрнутый бэкап — лотерея, а не страховка.
Логи и мониторинг
Включите логи доступа и ошибок, настройте алерты на всплески 5xx, перебор паролей и изменения файлов. Чем раньше видна аномалия, тем дешевле инцидент.
Как проверить чужой сайт перед оплатой или вводом данных
Перед вводом карты или личных данных на незнакомом сайте: возраст домена, HTTPS, прогон через /security и /malware, проверяемое юрлицо. Домену пара недель, оплата без HTTPS, грейд F — закрывайте вкладку. Методики — в статьях о проверке сайта на мошенничество и проверке сайта на вирусы.
Сводная таблица: слой → что проверить → инструмент
| Слой | Что проверить | Инструмент | Критичность |
|---|---|---|---|
| HTTPS / TLS | Сертификат, цепочка, протоколы | /ssl | Критично |
| Security-заголовки | HSTS, nosniff, X-Frame-Options | /security | Высокая |
| CSP | Директивы, unsafe-inline | /csp | Высокая |
| Cookies | HttpOnly, Secure, SameSite | /cookie | Высокая |
| Вредоносный код | Инжекты, редиректы, блэклисты | /malware | Критично |
| CMS и плагины | Версии, известные CVE | Админка CMS | Критично |
| Утечки файлов | .git, .env, бэкапы в вебруте | Вручную, curl | Критично |
| Доступы | Пароли, 2FA, лишние аккаунты | Вручную | Высокая |
Персональные данные и 152-ФЗ
Собираете через форму хотя бы имя и телефон — вы оператор персональных данных: нужны политика обработки, согласия в формах, уведомление Роскомнадзора и хранение данных россиян в РФ. Самопроверка занимает вечер — разбор в статье о проверке сайта на соответствие 152-ФЗ.
Календарное правило: после любого обновления CMS, установки плагина или правки конфига — повторный прогон сканера. Большинство регрессий появляется после «безобидных» изменений.
Частые вопросы
Чем проверка безопасности отличается от проверки на вирусы?
Антивирусная проверка ищет случившееся заражение: скрипты, редиректы, блэклисты. Проверка безопасности оценивает защищённость — сертификат, заголовки, CSP, cookies — риск будущего взлома. Чистый по антивирусу сайт может иметь грейд F.
Как часто проверять сайт на безопасность?
Минимум раз в месяц и после каждого изменения: обновления CMS, нового плагина, правки конфигурации. Для сайтов с оплатой и персональными данными — еженедельно либо автоматический мониторинг.
Что такое грейд A–F?
Оценка сканера /security: A — ключевые заголовки, HTTPS и флаги cookies на месте; F — критические механизмы защиты отсутствуют.
Законно ли проверять чужой сайт?
Пассивные проверки — чтение заголовков, сертификата, публичных cookies — легальны: то же самое видит любой браузер. Запрещено активное без разрешения владельца: скан уязвимостей, подбор паролей, эксплуатация дыр.
Сканер нашёл проблемы — что чинить первым?
По риску: сначала malware и утечки, затем HTTPS и сертификат, затем флаги сессионных cookies, в конце заголовки и CSP. После каждого фикса — повторный прогон.
Финальный чек-лист
- HTTPS включён на всех страницах, редирект с HTTP работает.
- Сертификат валиден, цепочка полная, автопродление настроено.
- Security-заголовки: HSTS, nosniff, X-Frame-Options, Referrer-Policy.
- CSP настроена, unsafe-inline в script-src отсутствует.
- Сессионные cookies: HttpOnly, Secure, SameSite.
- Проверка на malware чистая, сайта нет в блэклистах.
- CMS, плагины и темы обновлены, лишние удалены.
- Пароли уникальные, 2FA включена, доступы отревизованы.
- Бэкапы автоматические, вне сервера, восстановление проверено.
- Логи включены, уведомления об аномалиях настроены.
Разовая проверка фиксирует только сегодняшнее состояние, а регрессии приходят с каждым обновлением — проще поставить сайт на автоматический мониторинг: тарифы — на странице /pricing.