Suite à l'évocation du problème par @lanodan, je me suis rendu compte que je n'avais jamais couché par écrit cette anecdote sur une faille de sécurité de ZeroBin.

Cela me semble suffisamment édifiant pour servir de leçon, et cela ma rendu terriblement humble sur la sécurité.

Autant en faire profiter tout le monde: sebsauvage.net/wiki/doku.php?i

@sebsauvage Haha, j'ai vu tout de suite pourquoi avec "on s'arrête de comparer dès qu'on trouve un caractère différent".

Mais du coup ça me fait penser que je crois pas connaitre de trucs style strcmp()/strncmp() qui soient définit comme étant forcément en temps constant.
Suivre

@lanodan
Bah oui, j'imagine que dans tous les langages les fonctions de comparaison sont "optimisées" (normale: on cherche à minimiser les cycles CPU).

@sebsauvage Ouais enfin c'est bizarre qu'il y en ait pas une variante qui soit faite pour être en temps constant.
Plus un avertissement comme quoi c'est pas forcément en temps constant donc à ne pas utiliser pour quelque chose de critique pour la sécurité.

C'est une fonction qui est relativement simple à implémenter mais y'a toujours le risque de se vautrer ou d'avoir le compilo' qui t'optimise le truc alors qu'il fallait pas.

@lanodan
haha oui je n'y avais pas pensé: Le compilo qui en optimisant introduit une faille de sécurité.

@sebsauvage C’est une des raisons de pourquoi explicit_bzero existe d’ailleurs.

Inscrivez-vous pour prendre part à la conversation
Framapiaf

Le réseau social de l'avenir : pas de publicité, pas de surveillance institutionnelle, conception éthique et décentralisation ! Gardez le contrôle de vos données avec Mastodon !