Astro 6.1.8 corrige un bug critique de nom de fichier sur Netlify et une faille de sécurité sur /_image

Astro 6.1.8 corrige un bug critique de nom de fichier sur Netlify et une faille de sécurité sur /_image

lschvn

Astro 6.1.8 est sorti le 18 avril avec deux correctifs que les développeurs déployant sur Netlify ou Vercel devraient appliquer immédiatement.

Le Bug de Nom de Fichier qui Casse les Déploiements Netlify

La correction la plus impactante adresse une régression des versions 6.x : les noms de fichiers de build pouvaient contenir des caractères spéciaux (!, ~, {, }) invalidés ou supprimés sur certaines plateformes de déploiement.

Le problème se manifeste sur Netlify. La protection anti-skew — qui garantit que les assets déployés correspondent à la sortie du build — supprime les caractères jugés unsafe des noms de fichiers. Si votre HTML buildé référence chunk.abc123!~{x}.js et que Netlify le sert comme chunk.abc123.js, la référence casse et la page ne charge pas.

La équipe Astro confirme que cela affectait les builds où des imports dynamiques ou certains patterns de code-splitting produisaient des chunks avec des segments hash contenant ces caractères. La version 6.1.8 normalise les noms de fichiers en sortie pour éviter ces caractères.

Faille Content-Type de /_image

Le second correctif notable ferme une faille de sécurité dans l'endpoint d'optimisation d'image intégré d'Astro (/_image). L'endpoint acceptait un paramètre de requête f=svg arbitraire et servait le contenu retourné par l'URL upstream en image/svg+xml — sans vérifier que le contenu était réellement du SVG.

Un attaquant pouvait potentiellement utiliser cela pour des attaques de confusion content-type ou de cache poisoning si il arrivait à convaincre une victime de charger une URL image craftée pointant vers un endpoint interne. L'équipe Astro note que l'endpoint nécessite allowedDomains explicite, ce qui limite la surface d'attaque.

Performance : Cache de Crawling des Dépendances

Le serveur de dev gagne une amélioration measurable : le crawling interne des dépendances du projet est désormais mis en cache entre les requêtes. Dans les projets avec beaucoup de routes et un graphe de dépendances profond, cela réduit le parcours redondant du système de fichiers à chaque rafraîchissement.

Autres Correctifs en 6.1.8

  • Correction des chunks d'import dynamique recevant des hash frais à chaque build
  • allowedDomains correctement propagés au serveur de dev
  • Styles scoped Vue corrects pendant la navigation router côte client en dev
  • L'endpoint /_image valide désormais que la source est réellement du SVG avant de servir en image/svg+xml
  • Correction des erreurs de build sur Vercel et Netlify pour les chunks inter-modules utilisant des imports dynamiques

Mise à jour

Exécutez px @astrojs/upgrade ou npm install astro@latest pour mettre à jour. Si vous êtes sur Netlify ou Vercel, vérifiez que votre dernier déploiement charge correctement tous les assets.

Questions fréquentes

Articles connexes

Plus de couverture avec des sujets et tags en commun.

Nitro v3.0.260522-beta : Tracing à la Compilation, Cache VFS, Queues Vercel en Local
TypeScript

Nitro v3.0.260522-beta : Tracing à la Compilation, Cache VFS, Queues Vercel en Local

Le beta Nitro v3 du 22 mai apporte des wrappers de tracing pour les handlers de routes à la compilation, un cache VFS pour le code dynamique nitro, et le support des queues Vercel accessible en développement local — avec les correctifs de sécurité de la beta précédente.
Node.js 26.3.0 : Buffer Pool double, permission.drop() arrive, les Macs Intel en péril
TypeScript

Node.js 26.3.0 : Buffer Pool double, permission.drop() arrive, les Macs Intel en péril

Node.js 26.3.0 apporte un Buffer.poolSize par défaut de 64 KiB, une méthode permission.drop() pour abandonner les capacités une par une, un avertissement sur les binaires universels macOS, et un WebCrypto renforcé. npm passe à 11.16.0.
Oxc v0.134 : oxlint v1.68 Ajoute des Règles Vue et des Contrôles TypeScript Accessor
JavaScript

Oxc v0.134 : oxlint v1.68 Ajoute des Règles Vue et des Contrôles TypeScript Accessor

La version de juin d'Oxc publie oxlint v1.68.0 avec deux nouvelles règles Vue, une règle lint method-signature-style pour TypeScript, et des améliorations du parser pour rejecter les déclarations en contexte ambient.

Commentaires

Connexion Connectez-vous pour participer à la conversation.

Pas encore de commentaires. Soyez le premier à partager vos pensées.