Saltar al contenido principal

Menú de comandos

Ve a una página o busca en el catálogo

Herramientas y scripts de IA

Revisión de seguridad para Astro

Revisa un sitio Astro antes de desplegar: secretos en variables PUBLIC_, vite.define o islas de cliente, set:html con datos de la petición, CORS que refleja cualquier origen, checkOrigin desactivado, redirecciones abiertas y cookies de sesión débiles.

$5.00

Qué recibes: 1 archivo · 47.04 KB · ZIP

Ver opciones de compra

Descripción del producto

Una PUBLIC_STRIPE_SECRET_KEY en .env.production, o un import.meta.env.OPENAI_API_KEY pasado como prop a una isla client:load, acaba en el JavaScript y el HTML que descarga cada visitante. Un valor ?q= pasado a set:html permite que cualquiera envíe un enlace que ejecuta scripts en tu dominio. Esta skill detecta esos y los demás errores de Astro que se indican a continuación antes de que despliegues, y te explica cómo corregir cada uno.

Tu agente ejecuta un escáner sobre los archivos astro.config, las páginas y componentes .astro (frontmatter, plantilla y scripts), los endpoints, el middleware y las actions, los archivos .env y los componentes que leen variables PUBLIC_. Conoce las reglas de Astro: solo las variables PUBLIC_ y los campos de cliente de astro:env llegan al navegador, las props de client:* y los valores de define:vars se serializan en la página mientras que las props de server:defer se cifran, set:html no se escapa, Astro.params es fijo en tiempo de compilación solo en las páginas prerenderizadas, y checkOrigin está activado por defecto. Considera correctas las claves publishable, anon y las claves de mapas para navegador, los interruptores de funciones y los flags derivados de un secreto (!!key), lee los archivos .env solo en carpetas que contienen archivos de Astro, no avisa de imágenes remotas en builds estáticos y nunca compila ni ejecuta tu proyecto. Devuelve BLOCK, REVIEW o NOT FLAGGED, con el archivo, la línea, el motivo y una alternativa más segura. Los secretos nunca se muestran.

Qué comprueba

BLOCK (corrígelo antes de publicar)

  • A01: una variable con nombre de secreto hecha pública: variables PUBLIC_ en archivos .env y en el código, campos de astro:env con context "client" y valores PUBLIC_ en formatos de clave conocidos
  • A02: vite.define al que se le pasa todo el entorno, una variable con nombre de secreto o una clave literal
  • A03: secretos del servidor (u objetos que los contienen) pasados a islas client:*, define:vars, atributos HTML o al texto de la página
  • A04: set:html con datos de la query string, de formularios, de cabeceras o de rutas renderizadas bajo demanda, también a través de un renderizador de Markdown
  • A05: CORS que copia el Origin de la petición en Access-Control-Allow-Origin con credenciales y sin lista de permitidos

REVIEW (revísalo antes del lanzamiento)

  • A11: security.checkOrigin desactivado
  • A12: security.allowedDomains que confía en cualquier host reenviado
  • A13: image.remotePatterns que permiten cualquier host en un sitio renderizado bajo demanda
  • A14: redirecciones a un valor ?next= o de formulario que no se comprueba antes
  • A15: source maps publicados junto con el build
  • A16: cookies de sesión o de token configuradas sin httpOnly y secure
  • A17: secretos de astro:env marcados como públicos en el servidor o con un valor por defecto literal
  • A18: CORS "*" junto con credenciales

Qué incluye

  • El escáner (Python 3.9+, solo biblioteca estándar)
  • Una guía de reglas con el motivo, la alternativa más segura y la fuente oficial de cada regla
  • Una tienda de ejemplo arriesgada y otra segura (configuración, .env, páginas y rutas de API), y el informe real que genera el escáner sobre la arriesgada

Limitaciones

Lee cada archivo por separado y sigue los valores solo a través de asignaciones simples en el mismo archivo, por lo que no se siguen los datos que pasan por funciones auxiliares importadas o componentes padre. No conoce las cabeceras del hosting, las reglas de la CDN ni si un endpoint o una action comprueba quién es el usuario, no lee el contenido Markdown y MDX, y los componentes JSX, TSX, Vue y Svelte solo se revisan en busca de secretos PUBLIC_. NOT FLAGGED no es una garantía.

Contenido

Un archivo ZIP con 22 archivos: SKILL.md, el escáner en scripts/ (7 archivos de Python), references/rules.md (cada regla con su motivo y su alternativa más segura) y examples/ (12 archivos de ejemplo más report.md, la salida real del escáner sobre el ejemplo arriesgado).

Cómo usarlo: Esta es una skill para agentes: una carpeta con un archivo SKILL.md y scripts de Python que puede ejecutar un agente de programación con IA como Claude Code, Cursor o Codex CLI. Descomprímela en la carpeta de skills de tu agente (para Claude Code: ~/.claude/skills/) y luego pide a tu agente que revise tu proyecto. Los scripts también funcionan por sí solos con Python 3.9 o posterior, sin instalar nada. Solo leen tus archivos: sin acceso a la red y sin enviar nada a ningún sitio.

Qué recibes

1 archivo · 47.04 KB

  • astro-safety-check-1.0.0.zipZIP · 47.04 KB
LicenciaUso comercial permitido
Revisión del paqueteSuperada

Getly abrió los archivos subidos y no encontró nada que impida abrirlos. No es un análisis antivirus ni una valoración de calidad.

Publicado12 nov 2026
Tamaño del archivo47.04 KB
Formato de archivoZIP
Versiónv1.0

Etiquetas

astrossrxssenv-variablessecurityai agent skill
R
RR HH

Preguntas frecuentes

¿Tengo acceso al instante?

Sí. Es un producto digital: puedes descargarlo justo después del pago, directamente desde tu biblioteca.

¿Puedo usarlo en proyectos comerciales?

Sí. Se permite el uso comercial: úsalo en tu propio negocio y en cosas que vendas. No puedes revender ni redistribuir el archivo en sí.

¿Cuál es vuestra política de reembolso?

Puedes pedir un reembolso dentro de 30 días. Si algo no va bien, solicítalo desde tu pedido y el equipo de Getly lo revisa.

¿Qué formatos y tamaños de archivo recibiré?

Descargarás 1 archivo - ZIP - 47.04 KB en total.

¿Recibo actualizaciones gratis?

Sí: cuando el vendedor publica una versión nueva, puedes volver a descargar los archivos más recientes desde tu biblioteca sin coste extra. Mira el registro de cambios para ver las últimas actualizaciones.

Precio

$5.00