Открытые файлы .env, .git и бэкапы
Файлы, которые деплой не должен публиковать никогда — .env, .git, дампы базы, — запрошенные по адресу и подтверждённые по содержимому ответа. Каждый отдаёт наружу доступы или исходный код.
Когда сайт выкладывают на сервер копированием рабочей папки, вместе с ним часто уезжает то, что посетителям видеть не положено: .env с паролями от базы и API-ключами, каталог .git со всей историей исходников, backup.zip, сделанный перед рискованным обновлением, забытый phpinfo.php. Боты запрашивают эти адреса на каждом домене, который находят, поэтому открытый файл обычно обнаруживают за считаные часы.
Как проверяет SiteScan
Сканер запрашивает фиксированный список — /.env, /.git/config, /.git/HEAD, /server-status, /phpinfo.php, /.DS_Store, /backup.sql, /backup.zip, /backup.tar.gz, а на WordPress ещё /wp-config.php.bak — и читает не больше 8 КБ ответа. Файл засчитывается, только если ответ 2xx, это не HTML-страница и содержимое действительно похоже на оригинал: известные имена переменных в .env, секция [core] в конфиге Git, сигнатура zip или gzip у архива. Сайт, который на любой адрес отдаёт главную, ложной тревоги не вызовет. Любая находка красит строку в красный и перечисляет пути.
Как исправить
Удалите файл и считайте его содержимое утёкшим: смените все пароли и ключи из него. Закройте скрытые файлы на уровне сервера, например location ~ /\.(?!well-known) { deny all; } в nginx, и выкладывайте собранный артефакт, а не рабочую копию. См. также листинг директорий.
Проверьте этот пункт на своём сайте
Запустите бесплатное сканирование: в отчёте будет эта строка для вашего домена вместе с остальными проверками аудита.
Ещё в разделе «Открытые файлы»
Что проверяет SiteScan
TLS-сертификат
- Срок действия SSL/TLS-сертификата
- Устаревшие версии TLS (1.0 и 1.1)
- Цепочка сертификатов TLS
- Издатель TLS-сертификата
- Алгоритм подписи сертификата
Регистрация домена
- Срок регистрации домена
- Зарегистрированное доменное имя
- Регистратор домена
- Дата регистрации домена
- Дата последнего изменения домена
- Статусы домена в реестре (EPP)
- Запрет на перенос домена
- Abuse-контакт регистратора
- Источник данных RDAP и WHOIS
Индексация
- Файл robots.txt
- CSS и JS, закрытые в robots.txt
- XML-карта сайта (sitemap.xml)
- Индекс карт сайта
- Чужие URL в карте сайта
- Даты lastmod в карте сайта
- Битые URL в карте сайта
- RSS- и Atom-лента
Адреса и редиректы
- Редирект с HTTP на HTTPS
- Редирект с www и без www
- Длина цепочки редиректов
- Обработка ошибки 404 и мягкий 404
Заголовки безопасности
- HTTP-заголовки безопасности и оценка
- Заголовок Strict-Transport-Security (HSTS)
- Заголовок Content-Security-Policy (CSP)
- X-Content-Type-Options: nosniff
- X-Frame-Options и защита от кликджекинга
- Заголовок Referrer-Policy
- Заголовок Permissions-Policy
- Список HSTS preload
- CORS и чтение с других origin
- HTTP-метод TRACE
Отдача и репутация
- Заголовок Cache-Control для HTML
- Ревалидация через ETag и Last-Modified
- Поддержка HTTP/3 и QUIC
- Версии ПО в заголовках сервера
- Проверка по DNS-блоклистам (DNSBL)
Внутренние ссылки
Открытые файлы
- Открытые файлы .env, .git и бэкапы
- Листинг директорий на сервере
- Публичные source maps JavaScript
- Открытые точки входа WordPress
Служебные файлы
- Файл security.txt
- Файл llms.txt для ИИ-ассистентов
- Файл llms-full.txt
- Файл ads.txt для рекламы
- Файл humans.txt
- Адрес /.well-known/change-password
DNS и почта
- MX-записи (почтовые серверы)
- Запись SPF
- Запись и политика DMARC
- Подпись зоны DNSSEC
- Запись CAA
- Резервирование DNS-серверов
- Поддержка IPv6 (AAAA-запись)
- Политика MTA-STS
- Запись TLS-RPT для отчётов
- Запись BIMI (логотип в почте)
- Wildcard-запись в DNS
- Висячий CNAME и захват поддомена
Приватность и согласие
- Счётчики аналитики и трекеры
- Баннер согласия на cookie
- Политика конфиденциальности
- Пользовательское соглашение
- Выходные данные (Impressum)
- Заявление о доступности
Core Web Vitals
- Оценка производительности Lighthouse
- Largest Contentful Paint (LCP)
- Cumulative Layout Shift (CLS)
- Interaction to Next Paint (INP)
- Полевые данные CrUX и лабораторные замеры