Défi Sécurité Web & API +50 XP

Redis Cache Poisoner

Une API de cache de notes construit des commandes Redis en utilisant la concaténation de chaînes, créant des opportunités d'attaques par injection CRLF. Lorsque l'entrée utilisateur rencontre une sanitisation insuffisante, même un simple stockage de notes peut devenir un chemin vers l'injection de commandes Redis et la manipulation de sessions. Il est temps de tester vos compétences en injection de protocole !

65 % le résolvent 23 hackers ont joué 1 flag Mis à jour le 06 oct. 2026 First blood skalvin
CRLF InjectionRedis Command InjectionCache PoisoningProtocol ManipulationWeb Security
Commencez Votre Défi
  1. 1Créez un compte gratuit, puis cliquez sur « Démarrer le Lab »Vous obtiendrez votre propre machine avec une adresse IP
  2. 2Explorez la cibleOuvrez l'IP dans votre navigateur et cherchez des vulnérabilités
  3. 3Trouvez et soumettez les flagsLes flags sont des textes secrets cachés dans le système - collez-les ci-dessous pour marquer des XP
  • ~1-2 min de configuration
  • Instance privée
  • 30 min par session. Relancez-la gratuitement, autant de fois que vous voulez.

L'injection CRLF est une vulnérabilité de sécurité web qui se produit lorsqu'un attaquant peut injecter des caractères de retour chariot (CR, ) et de saut de ligne (LF, ) dans l'entrée de l'application utilisée pour construire des commandes de protocole. Lorsque cette vulnérabilité existe dans les applications qui interagissent avec Redis, elle devient un vecteur d'attaque puissant pour l'empoisonnement de cache, le détournement de session et l'escalade de privilèges par injection arbitraire de commandes Redis.

Comprendre l'injection CRLF dans Redis

Redis utilise un protocole textuel appelé RESP (Redis Serialization Protocol) où les commandes sont séparées par des séquences CRLF. Lorsqu'une application construit des commandes Redis en concaténant l'entrée utilisateur sans nettoyer les caractères CRLF, un attaquant peut terminer prématurément la commande prévue et injecter des commandes Redis supplémentaires. C'est similaire en principe à l'injection SQL, mais cible le protocole Redis au lieu des requêtes SQL. Toute application qui construit des commandes Redis par concaténation de chaînes plutôt qu'en utilisant des clients paramétrés est potentiellement vulnérable.

Techniques d'attaque par empoisonnement de cache

L'empoisonnement de cache par injection de commandes Redis permet aux attaquants d'écrire des paires clé-valeur arbitraires dans le cache. Dans les applications qui stockent les données de session dans Redis, cela peut mener au détournement de session ou à l'escalade de privilèges. En injectant des commandes comme SET session:admin_token, un attaquant peut créer ou écraser des données de session pour usurper l'identité d'utilisateurs privilégiés. D'autres scénarios d'attaque incluent l'empoisonnement du contenu HTML mis en cache pour diffuser des scripts malveillants, la modification de la configuration d'application stockée dans Redis ou l'utilisation de commandes EVAL pour exécuter des scripts Lua sur le serveur Redis.

Impact réel et prévention

Des vulnérabilités d'injection CRLF affectant les systèmes de cache ont été trouvées dans des applications en production dans diverses industries. Les conséquences vont de la falsification de données à la compromission complète de l'application. La prévention nécessite l'utilisation de bibliothèques client Redis qui gèrent correctement le paramétrage des commandes, le nettoyage de toutes les entrées utilisateur pour les caractères CRLF avant de les incorporer dans les commandes de protocole et la mise en place de contrôles d'accès sur les instances Redis. Les professionnels de la sécurité doivent comprendre ces modèles d'attaque pour les identifier efficacement lors des missions de test d'intrusion.

Ce que vous apprendrez

  • Comprendre comment l'injection CRLF permet l'injection de commandes Redis
  • Apprendre le protocole RESP de Redis et comment les commandes sont structurées
  • Pratiquer les techniques d'empoisonnement de cache pour manipuler les données de session
  • Étudier l'escalade de privilèges par détournement de session Redis
  • Reconnaître les modèles de code vulnérables impliquant la concaténation de chaînes dans les commandes de protocole

Prérequis

Compréhension de base des applications web et de HTTP Familiarité avec les concepts de mise en cache Connaissances de base de Redis ou des bases clé-valeur