Rejouable

Définition, exemples et bonnes pratiques

À retenir

  • Désigne une action qui produit le même effet si elle est répétée.
  • Représente une vulnérabilité majeure si le protocole n'est pas sécurisé.
  • La protection repose sur l'utilisation de données uniques pour chaque transaction.

En informatique, ce terme qualifie une action, une donnée ou une requête qui peut être capturée puis renvoyée à l'identique pour obtenir le même résultat. C'est un peu comme si vous enregistriez le signal sonore d'une télécommande pour déverrouiller une porte et que vous le repassiez plus tard pour l'ouvrir à nouveau sans posséder la clé originale.

Étymologie

Composé du préfixe re- (indiquant la répétition) et de l'adjectif jouable. En cybersécurité, il s'agit d'une traduction directe de l'anglais replayable, utilisé pour décrire des attaques par rejeu (replay attacks).

Exemples d'usage

  • Une requête de connexion à un site web qui ne change jamais : si un pirate l'intercepte, il peut la renvoyer pour se connecter à votre place.
  • L'enregistrement d'une suite de commandes SQL pour restaurer une base de données après une panne.
  • Le signal d'ouverture d'une voiture ancienne qui n'utilise pas de code tournant.

Cas d'usage

On utilise ce concept principalement en cybersécurité pour identifier des failles dans les protocoles d'authentification. Il intervient aussi dans la gestion des bases de données (rejouer des journaux de transactions) et dans les tests automatisés où l'on souhaite reproduire exactement un comportement utilisateur.

Bonnes pratiques

Pour éviter qu'une action sensible ne soit rejouable par un attaquant, il est crucial d'intégrer des éléments dynamiques à chaque échange, comme un sel (salt), un numéro d'ordre, un horodatage (timestamp) ou un nonce (nombre à usage unique).

Synonymes

reproductible réitérable

Antonymes

à usage unique non-rejouable éphémère

Conseil

Si vous développez une application, ne faites jamais confiance à une donnée statique pour identifier une action importante. Imaginez toujours qu'un intermédiaire peut copier votre message et le renvoyer 5 minutes plus tard : votre système doit être capable de détecter que ce message a déjà été utilisé.

Questions fréquentes

Est-ce que 'rejouable' est toujours un défaut ?

Non. C'est un défaut en sécurité (vol de session), mais c'est une fonctionnalité utile en maintenance pour restaurer des données ou tester un logiciel.

Quelle est la différence avec l'idempotence ?

L'idempotence signifie que répéter l'action n'a plus d'effet supplémentaire (ex: cliquer 10 fois sur 'éteindre'). Le caractère rejouable se concentre sur la possibilité technique de soumettre à nouveau la même donnée.