← Volver al blog
SeguridadEquipo de Scanaris · 2 min de lectura · 13 de julio de 2026

Checklist de seguridad para tu app Next.js antes de lanzar

Lanzar una app Next.js con Cursor, v0 o Bolt es rápido, pero la velocidad esconde fallos que no ves hasta que alguien los encuentra por ti. Esta checklist repasa lo mínimo antes de pulsar deploy.

Variables de entorno: cuidado con NEXT_PUBLIC

Todo lo que empieza por NEXT_PUBLIC_ se incrusta en el bundle del navegador. Cualquiera puede leerlo abriendo las DevTools. Nunca pongas ahí una clave de API privada, un token de servicio ni el secreto de tu base de datos.

Reserva ese prefijo para valores de verdad públicos, como la URL de tu API o un ID de analítica. Las variables sin prefijo solo viven en el servidor: úsalas para claves privadas y accede a ellas solo desde Server Components, API routes o Server Actions.

API routes: valida y autoriza siempre

Una API route no es privada por estar en tu carpeta. Es una URL pública que cualquiera puede llamar con curl. Comprueba la sesión del usuario en cada handler, no solo en la interfaz. Que un botón no aparezca no impide que alguien golpee el endpoint directamente.

Valida el cuerpo de la petición antes de tocar la base de datos y no confíes en que el frontend mande datos limpios. Un atacante escribe su propio frontend.

Cabeceras de seguridad

Por defecto Next.js no manda cabeceras defensivas. Añade en next.config.js al menos Strict-Transport-Security, X-Content-Type-Options, X-Frame-Options y una Content-Security-Policy. Estas cabeceras reducen ataques de clickjacking, sniffing de tipos y ejecución de scripts inyectados.

Secretos filtrados en el cliente

Es fácil que una clave privada acabe en un Client Component por error, sobre todo cuando la IA reescribe archivos. Busca en tu bundle final cadenas como sk_, service_role o URLs de webhooks. Si aparecen en el JavaScript servido, ya están comprometidas: rótalas y muévelas al servidor.

Archivos que no deberían estar accesibles

Revisa que .env, .git y ficheros de backup no se sirvan en producción. Un .env accesible por URL es la vía más directa a que te vacíen la base de datos. Comprueba también que package.json no exponga rutas internas ni dependencias que delaten tu stack.

Comprueba todo esto en 30 segundos

Repasar esta lista a mano en cada deploy es tedioso y se olvida. Scanaris hace comprobaciones de solo lectura sobre tu sitio publicado: cabeceras, secretos expuestos en el JavaScript, archivos sensibles accesibles y configuración de cookies. Cada hallazgo llega con un prompt listo para pegar en tu IA y arreglarlo sin adivinar. Escanéalo antes de anunciar tu lanzamiento.

¿Y tu web, cómo va?

Pásale Scanaris y compruébalo en 30 segundos, gratis.

Escanear mi web

Checks relacionados

Guías de seguridad por stack