---
title: "Seguridad"
description: "Por qué Éclair es un CMS seguro por defecto: sin base de datos, Argon2id, verificación en dos pasos, CSP estricta, control de integridad y auditoría ofensiva."
url: "https://eclaircms.org/es/documentacion/seguridad"
lang: "es"
author: "Thierry Gustin"
published: "2026-10-30"
updated: "2026-11-01"
---

# Seguridad

> **Lo esencial** — Éclair es un CMS seguro por defecto: sin base de datos, no ofrece ningún blanco a la inyección SQL; sus datos tienen doble protección; el inicio de sesión combina Argon2id, protección contra fuerza bruta y verificación en dos pasos; el sitio público aplica una Content-Security-Policy estricta. Una auditoría de seguridad ofensiva encontró 17 vulnerabilidades, todas corregidas.

Éclair es un CMS seguro por defecto, concebido para un entorno hostil: un hosting compartido y robots que prueban contraseñas sin parar. No tienes que instalar ni configurar nada para estar protegido. Esta guía explica qué viene bloqueado de serie, qué vigila la administración y los cuatro gestos que refuerzan aún más tu sitio.

## ¿Por qué es más seguro un sitio sin base de datos?

Sin base de datos, la inyección SQL, uno de los ataques más extendidos contra los sitios web, simplemente no tiene nada a lo que apuntar. Tus contenidos son archivos, y esos archivos están protegidos dos veces:

- las carpetas `data/`, `app/` y `cache/` están prohibidas desde la web por el archivo `.htaccess`;
- cada archivo de datos empieza con la línea `<?php exit; ?>`: aunque un servidor ignorara los `.htaccess`, no se mostraría nada, y no se puede escribir en él ninguna secuencia `<?php`;
- los archivos son privados (permisos 0600) y se escriben de forma atómica: un corte nunca deja un archivo a medio escribir.

La instalación misma está protegida: solo es posible en las 2 horas siguientes a la primera visita, y la dirección del sitio solo se usa para redirigir a los visitantes después de que el propio servidor la haya verificado.

## ¿Cómo se protege el inicio de sesión?

- **Contraseñas** cifradas con Argon2id (19 MiB de memoria, 2 pasadas), los parámetros recomendados por [OWASP](https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html); bcrypt como alternativa. Mínimo 10 caracteres, contraseñas habituales rechazadas.
- **Protección contra fuerza bruta**: cada intento se reserva antes de comprobarse, lo que hace imposible superar el límite con peticiones en paralelo. Los límites se aplican a la red (dirección IPv4 o bloque /64 en IPv6) y a la cuenta atacada. Tu dispositivo habitual nunca queda bloqueado por un atacante que falla a propósito.
- **Verificación en dos pasos** (2FA) compatible con Google Authenticator, Microsoft Authenticator, 1Password o Bitwarden, con código QR y 8 códigos de recuperación que se muestran una sola vez. Tras 10 códigos erróneos, la 2FA de la cuenta se bloquea 15 minutos y se avisa a su titular por correo electrónico.
- **Contraseña solicitada de nuevo** para las acciones sensibles (copia de seguridad, cuentas, ajustes avanzados, cambio de correo) pasados 15 minutos desde el inicio de sesión.
- **Sesiones reforzadas**: ninguna sesión antes de iniciar sesión, cookies `HttpOnly`, `Secure` y `SameSite=Strict`, cierre de sesión tras inactividad, botón «Cerrar la sesión de todos». La administración se fuerza a HTTPS en cuanto el sitio lo usa.
- **Tokens CSRF** en todas las acciones y verificación del origen de las peticiones.

## ¿Cómo está blindado el sitio público?

| Protección | Qué impide |
| --- | --- |
| Content-Security-Policy estricta (ningún script en línea, huella SHA-256 para el estilo) | La ejecución de scripts inyectados |
| Protección anti-clickjacking, `nosniff`, `Referrer-Policy`, `Permissions-Policy`, HSTS opcional | La incrustación trampa, las fugas de información |
| Ninguna redirección abierta | Que se use tu dominio para redirigir a un sitio malicioso |
| Contenidos saneados con lista blanca | Los enlaces `javascript:` o `data:`, incluso disfrazados |
| Formulario de contacto con campo trampa, token y límites | El spam, sin captcha: 5 mensajes por red cada 10 minutos, 100 al día para todo el sitio |
| Imágenes recodificadas al subirlas | Las cargas ocultas y los datos EXIF o GPS; se rechazan los SVG y las imágenes que contienen código |

Las cabeceras de seguridad dependen de los ajustes, nunca de la petición: una página servida desde la caché envía las mismas a todo el mundo, lo que hace imposible el envenenamiento de la caché.

## ¿Qué vigila la página Seguridad?

Reservada a los administradores, la página **Seguridad** reúne tus herramientas de control:

![Página Seguridad de la administración de Éclair: nivel de protección en porcentaje, prueba de protección de carpetas y control de integridad](https://eclaircms.org/media/2026/11/es-security-page.webp)
*La página Seguridad: cada punto naranja indica una protección que aún puedes activar.*

1. **Nivel de protección**: un porcentaje y el estado de cada protección (HTTPS, dirección verificada, verificación en dos pasos, dirección de administración, versión de PHP, HSTS…), con el botón **Verificar la dirección del sitio**.
2. **Prueba de protección de carpetas**: tu navegador intenta abrir archivos internos, que deben seguir siendo inaccesibles.
3. **Integridad de los archivos**: cada archivo de Éclair se compara con su huella original, y se señalan los archivos sospechosos, como un script oculto en los medios o un `.php` sin línea de protección en `data/`.
4. **Copia de seguridad**: un archivo de todo tu sitio en un clic.
5. **Sesiones y bloqueos**, y después el **registro de seguridad**: inicios de sesión, fallos, bloqueos, cambios de contraseña, copias de seguridad.

Los registros están limitados a 1 MB: es imposible inflarlos para llenar el disco.

## ¿Qué reveló la auditoría de seguridad ofensiva?

Antes de su publicación, Éclair fue atacado de forma metódica: condiciones de carrera, fuerza bruta, redirecciones, inyecciones, archivos trampa. Se encontraron **17 vulnerabilidades**, de ellas 2 graves, 7 medias y 8 leves, y todas se corrigieron. Los 13 escenarios de ataque se repitieron después sobre la versión corregida: todos neutralizados. El asistente IA, llegado con la versión 1.2.0, tuvo su propia auditoría antes de su lanzamiento.

Las pruebas automáticas de Éclair, que suman 550 comprobaciones, reproducen buena parte de esos ataques. El detalle de las correcciones figura en el [changelog](https://eclaircms.org/es/changelog).

## ¿Qué gestos refuerzan aún más tu CMS seguro?

> **Los 4 gestos que cuentan** — 1. Activa la **verificación en dos pasos** en Mi perfil, para cada administrador.  
> 2. Elige una **dirección de administración personalizada** en Ajustes › Avanzado: llamarán a la puerta menos robots.  
> 3. Haz clic en **Verificar la dirección del sitio** en Seguridad y activa después HSTS cuando el HTTPS funcione perfectamente.  
> 4. **Descarga una copia de seguridad** antes de cada cambio importante, en Seguridad › Copia de seguridad.

Mantén también PHP actualizado en tu hosting: Éclair funciona de PHP 8.1 a 8.5, y se recomienda 8.3. Para la copia de seguridad y las actualizaciones, consulta la guía [Actualizar, hacer copias de seguridad, mudarse](https://eclaircms.org/es/documentacion/actualizaciones).

## Preguntas sobre la seguridad

### ¿Es Éclair de verdad un CMS seguro sin extensión de seguridad?

Sí. Verificación en dos pasos, protección contra fuerza bruta, cabeceras estrictas, control de integridad y copia de seguridad vienen integrados. Sin extensiones que actualizar, desaparece la primera fuente de vulnerabilidades de los CMS clásicos. La [comparativa con WordPress](https://eclaircms.org/es/eclair-vs-wordpress) cuantifica esa diferencia.

### He perdido el móvil de la verificación en dos pasos: ¿qué hago?

Usa uno de tus 8 códigos de recuperación. Si los has perdido y ningún otro administrador puede ayudarte, sigue el procedimiento de emergencia por FTP descrito en [Solución de problemas](https://eclaircms.org/es/documentacion/solucion-de-problemas#forgot-password).

### ¿Puede un atacante bloquear mi cuenta fallando a propósito?

No: tu dispositivo habitual nunca queda bloqueado por los fallos de otro. Los límites apuntan a la red del atacante y a la cuenta, sin impedirte iniciar sesión desde casa.

### ¿Qué hago si el control de integridad señala un archivo modificado?

Si no has personalizado nada, sustituye ese archivo por el del ZIP oficial. Si has modificado tu tema, es normal: los archivos de app/theme aparecen como modificados.
