Vue lecture

Certificats HTTPS - La validation par email et téléphone c'est bientôt fini

Google et le CA/Browser Forum viennent d’annoncer la mise à mort de 11 méthodes de validation de domaine pour les certificats HTTPS. Bye bye les emails, les coups de fil, les fax (oui, y’en avait encore qui utilisaient ça) et le courrier postal pour valider les certificats car d’ici mars 2028, tout ça sera du passé.

Car quand vous demandez un certificat SSL/TLS pour votre site, l’autorité de certification doit vérifier que vous êtes bien le proprio du domaine. Historiquement, ça pouvait se faire via un email envoyé à l’adresse WHOIS, un coup de téléphone, ou même un courrier papier mais le problème, c’est que ces méthodes sont faciles à falsifier.

Des chercheurs en sécurité ont montré qu’il était possible de manipuler les données WHOIS ou d’intercepter les communications pour obtenir des certificats frauduleux et quand, malheureusement, un attaquant peut se faire passer pour le propriétaire légitime d’un domaine et obtenir un vrai certificat, ça ouvre la porte à des attaques man-in-the-middle bien méchantes.

Donc le CA/Browser Forum a voté le ballot SC-090 pour éliminer progressivement ces vieilles méthodes. Juin 2025 a vu la fin de la validation WHOIS par email, mars 2026 découragera l’utilisation des méthodes email en général, et mars 2028 ce sera le grand ménage final.

À la place, il faudra donc passer par des méthodes plus directes tels qu’un enregistrement DNS TXT avec une valeur aléatoire que l’autorité vérifiera, ou un fichier HTTP placé à un endroit précis de votre serveur. Ces méthodes permettent de prouver cryptographiquement que vous contrôlez bien le domaine, sans intermédiaire chelou.

Pour les utilisateurs lambda, ça ne change rien évidemment, vous continuerez à voir le petit cadenas dans votre navigateur. Mais pour les admins système et les responsables de sites, ça veut dire qu’il va falloir automatiser tout ça. Si vous utilisez encore des certificats validés par email, c’est donc le moment de migrer vers des outils comme ACME (le protocole derrière Let’s Encrypt).

Ce mouvement s’inscrit également dans une tendance plus large puisque le ballot SC-070 prévoit aussi de réduire la durée de validité des certificats pour les passer à 10 jours de réutilisation de la validation dès mars 2028, puis des certificats de 47 jours seulement en mars 2029. Donc autant dire que sans automatisation, ça va devenir ingérable.

Google pousse donc clairement l’écosystème vers plus de sécurité, quitte à forcer la main aux retardataires. Moins de maillons dans la chaîne, c’est moins d’opportunités pour les attaquants et je trouve que c’est plutôt une bonne nouvelle.

Source

  •  

Safe environment variables in JavaScript - Tim Severien

J'applique systématiquement la même logique avec Zod mais dans src/config.ts. Ça permet d'éviter de nombreux problèmes au runtime.

Pour éviter les appels à process.env, il est possible d'utiliser la règle ESLint n/no-process-env et d'ajouter une exception pour le seul fichier src/config.ts.


Permalink
  •  

Safe environment variables in JavaScript - Tim Severien

J'applique systématiquement la même logique avec Zod mais dans src/config.ts. Ça permet d'éviter de nombreux problèmes au runtime.

Pour éviter les appels à process.env, il est possible d'utiliser la règle ESLint n/no-process-env et d'ajouter une exception pour le seul fichier src/config.ts.


Permalink
  •  

Standard Schema

Un standard pour les lib de validation TypeScript (Zod, Valibot, etc.).

L'objectif est d'avoir une spec standardisée pour que les outils interagissant avec ces schémas fonctionnent quel que soit la lib de validation choisie. Un peu comme les PSR rn PHP.

Vitest supporte d'ailleurs ce format depuis la v4, pour rendre certaines assertions plus faciles à écrire.


Permalink
  •  

Standard Schema

Un standard pour les lib de validation TypeScript (Zod, Valibot, etc.).

L'objectif est d'avoir une spec standardisée pour que les outils interagissant avec ces schémas fonctionnent quel que soit la lib de validation choisie. Un peu comme les PSR rn PHP.

Vitest supporte d'ailleurs ce format depuis la v4, pour rendre certaines assertions plus faciles à écrire.


Permalink
  •  
❌