Empoisonnement du cache et protection de la couche de cache
Découvrez comment fonctionnent les attaques par empoisonnement et tromperie du cache, et comment renforcer votre couche de mise en cache contre ces attaques grâce à une gestion rigoureuse des clés et des en-têtes.
Empoisonnement du cache et protection de la couche de cache est une leçon Caching Strategies: Redis + CDN + Edge Computing gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Caching Strategies: Redis + CDN + Edge Computing, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Caching Strategies: Redis + CDN + Edge Computing comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
What Is Cache Poisoning?
Web cache poisoning tricks a cache into storing a malicious response that is then served to other users. The attacker manipulates an input that influences the response but is not part of the cache key.
- Attacker sends a crafted request
- Origin reflects attacker input into the response
- Cache stores it and serves it to everyone
Unkeyed Inputs Are the Risk
The root cause is an unkeyed input: a header or parameter that changes the response but is excluded from the cache key. If an attacker controls it, they poison the shared entry.
Example: Poisoning via a Custom Header
Imagine the origin reflects X-Forwarded-Host into a generated URL but the cache ignores that header. An attacker sets it to their domain, and the cached page now points everyone at attacker resources.
GET / HTTP/1.1
Host: example.com
X-Forwarded-Host: evil.comCache Key Hygiene
The primary defense is to include every input that affects the response in the cache key, or to strip dangerous headers before caching. Never reflect untrusted headers into cached output.
Cache Deception
Cache deception tricks the cache into storing private data under a public-looking URL. An attacker appends a fake static extension so the cache treats a sensitive page as a cacheable asset.
https://app.com/account/info.css (still serves the private account page)Defending Against Deception
Defend by caching based on the actual Content-Type and explicit rules, not just the URL extension. Never cache responses marked private or that set authenticated cookies.
Stripping Risky Headers
Configure the edge to drop headers an attacker should not control before they reach the origin or cache, such as forwarded-host style headers unless explicitly trusted.
proxy_set_header X-Forwarded-Host "";Sanitizing Reflected Values
If the origin must echo a value, validate and encode it. Never build cacheable URLs or scripts directly from request headers without strict allow-lists.
Separating Authenticated Traffic
Authenticated responses should generally bypass shared caches. Route logged-in requests around the public cache, or mark them private, no-store so they are never shared.
Cache-Control: private, no-storeMonitoring for Poisoning
Watch for anomalies: sudden cache entries with unexpected hosts, spikes in 4xx after a deploy, or reports of users seeing foreign content. Detection lets you purge fast.
Hardening Checklist
Protect the cache layer by:
- Keying on every response-affecting input
- Stripping untrusted forwarding headers
- Caching by content type, not URL extension
- Never caching private or authenticated responses
- Encoding any reflected request values
Quick Check
Test your cache security understanding.
Recap
You learned how cache poisoning and cache deception attacks exploit unkeyed inputs and URL-based caching. You saw defenses: rigorous cache-key hygiene, stripping untrusted headers, caching by content type, never sharing authenticated responses, and monitoring for anomalies.
Apprends Caching Strategies: Redis + CDN + Edge Computing avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 12
- Leçons
- 48
Questions Fréquemment Posées
La leçon « Empoisonnement du cache et protection de la couche de cache » est-elle gratuite ?
Oui — le texte complet de « Empoisonnement du cache et protection de la couche de cache » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Caching Strategies: Redis + CDN + Edge Computing, passe à CoddyKit PRO. Le cours Caching Strategies: Redis + CDN + Edge Computing comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Empoisonnement du cache et protection de la couche de cache » ?
Découvrez comment fonctionnent les attaques par empoisonnement et tromperie du cache, et comment renforcer votre couche de mise en cache contre ces attaques grâce à une gestion rigoureuse des clés et… Tu pratiques Caching Strategies: Redis + CDN + Edge Computing avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Caching Strategies: Redis + CDN + Edge Computing ?
Aucune expérience préalable n'est requise. Caching Strategies: Redis + CDN + Edge Computing sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Empoisonnement du cache et protection de la couche de cache » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Caching Strategies: Redis + CDN + Edge Computing ?
Oui. Chaque leçon Caching Strategies: Redis + CDN + Edge Computing inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Solutions de repli du cache et coupe-circuits
- Bonnes pratiques de sécurité des caches
- Tendances futures de la mise en cache
- Empoisonnement du cache et protection de la couche de cache