Сообщить об уязвимости
Сообщайте о проблемах безопасности конфиденциально, а не в открытом сообщении: откройте вкладку Security репозитория и нажмите Report a vulnerability, указав затронутую версию и способ воспроизведения. Мы подтверждаем сообщения в течение нескольких рабочих дней, исправляем подтверждённые проблемы в новом выпуске и упоминаем автора сообщения в примечаниях к выпуску, если не указано иное.
Исправления безопасности выпускаются для последней версии. Машиночитаемый контакт: security.txt.
Как BackupZit защищает ваши данные
Копии
Шифрование AES-256-GCM, ключи защищены ключом восстановления (Argon2id), каждый блок проверяется хешем SHA-256 при восстановлении. Неизменяемое хранилище с S3 Object Lock или защищённым репозиторием; обнаружение вымогателей и автоматические тесты восстановления.
Консоль
Сеансовые cookie HttpOnly и SameSite=Strict, защита от CSRF и кликджекинга, строгая Content-Security-Policy, ограничение попыток входа, двухфакторный вход, роли, необязательный принцип «четырёх глаз» и журнал аудита с цепочкой хешей, который можно отправлять на сервер syslog или в SIEM.
Агенты
Агенты подключаются к консоли исходящим соединением — на защищаемых машинах нет открытых портов — и при регистрации закрепляют сертификат консоли. У каждого агента свой секрет; секреты в консоли хранятся в зашифрованном виде.
Только ваша сеть
Нет облачного сервиса, нет телеметрии, нет учётной записи у нас. Проверка обновлений получает подписанные выпуски с GitHub; консоли без интернета обновляются загрузкой файлов выпуска.
Как защищены выпуски
- Каждый выпуск подписан ключом выпусков Ed25519 BackupZit; консоли и агенты проверяют подпись и контрольные суммы перед установкой обновления.
- Скрипт установки проверяет подпись и контрольную сумму скачиваемого выпуска.
- Пакеты собираются из помеченных тегами коммитов; образы содержат письменное предложение исходного кода (
SOURCE-CODE.txt). - Обновление консоли сначала делает копию базы и автоматически откатывается, если новая версия не запустится.
Как тестируется BackupZit
При каждом изменении (GitHub Actions)
| Проверка | Что находит |
|---|---|
| CI | go vet и полный набор тестов со встроенным PostgreSQL и симуляторами SFTP, S3 и vSphere; сборка для Windows |
| CodeQL | Инъекции, обход путей, небезопасные перенаправления и другие ошибки потока данных (Go, JavaScript, workflows) |
| govulncheck | Известные уязвимости в Go и в зависимостях, которые код действительно вызывает |
| staticcheck | Ошибки и мёртвый код |
| Dependabot | Уязвимые или устаревшие модули Go и действия |
| Secret scanning | Случайно закоммиченные учётные данные (с защитой при push) |
| OpenSSF Scorecard | Практики цепочки поставок репозитория |
Перед выпусками (в тестовой лаборатории)
| Проверка | Что находит |
|---|---|
| gosec | Небезопасные шаблоны в Go: выполнение команд, права на файлы, слабая криптография |
| Semgrep | Инъекции, XSS, небезопасные cookie, открытые перенаправления (Go, JavaScript, секреты, правила OWASP Top 10) |
| Trivy | Уязвимые зависимости, секреты и ошибки конфигурации |
| Gitleaks | Секреты во всей истории git |
| OWASP ZAP | Полное сканирование под учётной записью администратора: XSS, SQL-инъекции, CSRF, обход путей, проблемы заголовков |
| OpenVAS и nmap | Сетевые уязвимости, открытые порты и настройки TLS appliance |
| Сквозное тестирование | Копирование и восстановление каждого поддерживаемого источника в каждый тип хранилища на реальных системах; роли, LDAP/SSO, API |
Найденные проблемы исправляются до выпуска; принятые риски описываются в примечаниях к выпуску.
Этот сайт
backupzit.com — статический сайт: без cookie, без аналитики, без отслеживания, без сторонних скриптов и шрифтов, с Content-Security-Policy, которая не разрешает ни одного скрипта. См. политику конфиденциальности.