Informar de una vulnerabilidad
Informe de los problemas de seguridad en privado, no en un informe público: abra la pestaña Security del repositorio y pulse Report a vulnerability, indicando la versión afectada y cómo reproducirlo. Confirmamos los informes en pocos días laborables, corregimos los problemas confirmados en una nueva versión y mencionamos a quien informó en las notas de la versión, salvo que prefiera lo contrario.
Las correcciones de seguridad se publican para la versión más reciente. Contacto legible por máquina: security.txt.
Cómo protege BackupZit sus datos
Copias
Cifrado AES-256-GCM, claves protegidas por una clave de recuperación (Argon2id), cada fragmento verificado por su hash SHA-256 al restaurar. Almacenamiento inmutable con S3 Object Lock o el repositorio reforzado; detección de ransomware y pruebas de restauración automáticas.
Consola
Cookies de sesión HttpOnly y SameSite=Strict, protección contra CSRF y clickjacking, una Content-Security-Policy estricta, límite de intentos de inicio de sesión, inicio de sesión en dos pasos, roles, aprobación de cuatro ojos opcional y un registro de auditoría encadenado por hash que puede enviarse a un servidor syslog o SIEM.
Agentes
Los agentes se conectan de forma saliente a la consola (sin puertos abiertos en las máquinas protegidas) y fijan el certificado de la consola al registrarse. Cada agente tiene su propio secreto; los secretos se guardan cifrados en la consola.
Solo su red
Sin servicio en la nube, sin telemetría, sin cuenta con nosotros. La comprobación de actualizaciones obtiene versiones firmadas de GitHub; las consolas sin Internet se actualizan subiendo los archivos de la versión.
Cómo se protegen las versiones
- Cada versión se firma con la clave de publicación Ed25519 de BackupZit; consolas y agentes verifican la firma y las sumas de comprobación antes de instalar una actualización.
- El script de instalación verifica la firma y la suma de comprobación de la versión que descarga.
- Los paquetes se compilan a partir de commits etiquetados; las imágenes incluyen una oferta escrita de código fuente (
SOURCE-CODE.txt). - Una actualización de la consola hace primero una copia de la base de datos y vuelve atrás automáticamente si la nueva versión no arranca.
Cómo se prueba BackupZit
En cada cambio (GitHub Actions)
| Comprobación | Qué encuentra |
|---|---|
| CI | go vet y la batería completa de pruebas con PostgreSQL integrado y simuladores de SFTP, S3 y vSphere; compilación para Windows |
| CodeQL | Inyecciones, path traversal, redirecciones inseguras y otros errores de flujo de datos (Go, JavaScript, workflows) |
| govulncheck | Vulnerabilidades conocidas en Go y en las dependencias que el código realmente usa |
| staticcheck | Errores y código muerto |
| Dependabot | Módulos de Go y acciones vulnerables u obsoletos |
| Secret scanning | Credenciales subidas por error (con protección en el push) |
| OpenSSF Scorecard | Prácticas de la cadena de suministro del repositorio |
Antes de cada versión (en un laboratorio de pruebas)
| Comprobación | Qué encuentra |
|---|---|
| gosec | Patrones inseguros en Go: ejecución de comandos, permisos de archivos, criptografía débil |
| Semgrep | Inyecciones, XSS, cookies inseguras, redirecciones abiertas (Go, JavaScript, secretos, reglas OWASP Top 10) |
| Trivy | Dependencias vulnerables, secretos y configuraciones erróneas |
| Gitleaks | Secretos en todo el historial de git |
| OWASP ZAP | Análisis completo con sesión de administrador: XSS, inyección SQL, CSRF, path traversal, problemas de cabeceras |
| OpenVAS y nmap | Vulnerabilidades de red, puertos abiertos y ajustes TLS del appliance |
| QA de extremo a extremo | Copia y restauración de cada origen compatible en cada tipo de almacenamiento en sistemas reales; roles, LDAP/SSO, API |
Los hallazgos se corrigen antes de publicar; los riesgos aceptados se documentan en las notas de la versión.
Este sitio web
backupzit.com es un sitio estático: sin cookies, sin analítica, sin rastreo, sin scripts ni fuentes de terceros y con una Content-Security-Policy que no permite ningún script. Vea la política de privacidad.