Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
cve-2026-24514-Kubernetes-Dos — Preuve de concept d'exploitation pour CVE-2026-24514, un déni de service par épuisement de la mémoire dans le webhook d'admission de validation d'ingress-nginx, permettant à des attaquants à faibles privilèges de faire planter les pods du contrôleur via des requêtes AdmissionReview surdimensionnées. | Kitploit
Outils/GitHubGitHub/mbanyamer/cve-2026-24514-kubernetes-dos
Sécurité des ConteneursAnalyse des VulnérabilitésExploitationSécurité WebSécurité Cloud
GitHubmbanyamer/cve-2026-24514-kubernetes-dos

cve-2026-24514-Kubernetes-Dos

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →

À propos

Preuve de concept d'exploitation pour CVE-2026-24514, un déni de service par épuisement de la mémoire dans le webhook d'admission de validation d'ingress-nginx, permettant à des attaquants à faibles privilèges de faire planter les pods du contrôleur via des requêtes AdmissionReview surdimensionnées.

il y a 6 moisPas encore vérifié
Partager

Author CVE-2026-24514 Severity CVSS v3.1 CWE-770 Exploit Type Published

CVE-2026-24514 – Épuisement critique de la mémoire dans le webhook d'admission de validation ingress-nginx

Vulnérabilité de déni de service à distance non authentifiée / à faibles privilèges permettant à des attaquants de faire planter les pods du contrôleur ingress-nginx via des requêtes AdmissionReview surdimensionnées.

Vue d'ensemble et impact commercial

Le webhook d'admission de validation ingress-nginx (lorsqu'il est activé) n'impose pas de limites raisonnables sur la taille des objets AdmissionReview entrants.
Un attaquant capable d'atteindre le point de terminaison du webhook — même avec seulement de faibles privilèges — peut soumettre des charges utiles JSON extrêmement volumineuses, forçant le processus du contrôleur à allouer des quantités massives de mémoire.

Conséquences incluses :

  • Terminaison immédiate par OOM (OOMKilled) des pods ingress-nginx
  • Perte de la validation d'admission pour les ressources Ingress nouvelles/modifiées
  • Perturbation temporaire ou prolongée du routage du trafic entrant
  • Effets en cascade potentiels : pression mémoire sur les nœuds, évictions de pods, instabilité du cluster dans des environnements à ressources limitées
  • Dans le pire des cas pour les clusters multi-locataires : impact sur les espaces de noms et les charges de travail non liés

Score de base CVSS v3.1
6,5 Moyen
Chaîne vectorielle
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Faiblesse
CWE-770 : Allocation de ressources sans limites ni limitation de débit

Crédits
Mohammed Idrees Banyamer – @banyamer_security (Jordanie)

Versions affectées

ComposantVersions vulnérablesVersions corrigéesWebhook activé par défaut ?
ingress-nginx< 1.13.7≥ 1.13.7Non
ingress-nginx (1.14.x)< 1.14.3≥ 1.14.3Non

Remarque : La vulnérabilité ne se manifeste que lorsque la fonctionnalité du webhook d'admission de validation est explicitement activée.

📊 Flux d'attaque du PoC

root@kitploit:~
sequenceDiagram
    participant Attacker as Low-priv. Attacker<br>(inside / adjacent cluster)
    participant API as kube-apiserver
    participant WebhookConfig as ValidatingWebhookConfiguration<br>(ingress-nginx-admission)
    participant AdmissionSvc as ingress-nginx-admission<br>Service / Pod
    participant Controller as ingress-nginx Controller Process

    Note over Attacker,Controller: Attack prerequisites: webhook enabled + reachable endpoint

    Attacker->>API: 1. Create/Update large Ingress resource<br>OR direct POST to webhook endpoint
    API->>WebhookConfig: 2. Trigger admission review
    WebhookConfig->>AdmissionSvc: 3. Forward AdmissionReview v1 request<br>(very large JSON body)

    AdmissionSvc->>Controller: 4. Receive & begin parsing huge payload
    activate Controller
    Note right of Controller: No request body size limit in vulnerable versions
    Controller-->>Controller: 5. Allocate memory for large strings/objects<br>(heap grows massively → OOM imminent)
    Controller->>AdmissionSvc: 6. (Fails / hangs due to memory exhaustion)
    deactivate Controller

    Kubernetes->>AdmissionSvc: 7. kubelet detects memory limit breach
    Kubernetes->>AdmissionSvc: 8. OOMKill container
    AdmissionSvc-->>API: 9. Webhook timeout / connection refused
    API-->>Attacker: 10. Admission denied or timeout<br>(Ingress creation fails)

    Note over Attacker,Kubernetes: Result:
    Note over Attacker,Kubernetes: • ingress-nginx pod restarted / crashed
    Note over Attacker,Kubernetes: • Temporary loss of ingress validation
    Note over Attacker,Kubernetes: • Potential brief service disruption for new ingresses
    Note over Attacker,Kubernetes: • Possible node pressure in low-memory clusters

Exploitation – Exemples d'utilisation

Important : Cette vulnérabilité ne doit être démontrée que dans des clusters de laboratoire/test isolés avec une autorisation explicite.
L'exécuter contre des environnements de production est illégal et peut provoquer des pannes.

Méthode de test sécurisée recommandée :

root@kitploit:~
# 1. Port-forward the admission service locally
kubectl port-forward svc/ingress-nginx-controller-admission \
  8443:443 -n ingress-nginx

# 2. Run PoC with increasing payload sizes (start small!)
python3 cve-2026-24514-Kubernetes.py https://localhost:8443/validate 25 --insecure

# 3. Monitor memory & pod status in another terminal
watch -n 2 'kubectl top pods -n ingress-nginx && kubectl get pods -n ingress-nginx'

# More aggressive examples (use with caution)
python3 cve-2026-24514-Kubernetes.py https://localhost:8443/validate 80 --insecure
python3 cve-2026-24514-Kubernetes.py https://localhost:8443/validate 150 --insecure --field-name enormousJunk

Scénarios d'attaque réalistes :

  • Attaquant à l'intérieur du cluster (pod compromis / accès développeur) → appel DNS interne direct
  • Service webhook exposé en raison d'une mauvaise configuration (LoadBalancer / NodePort)
  • Ingénierie sociale / attaque de la chaîne d'approvisionnement livrant des manifestes Ingress malveillants avec des annotations / champs énormes

Recommandations d'atténuation et de durcissement

  1. Mettez à niveau immédiatement vers ingress-nginx ≥ 1.13.7 ou ≥ 1.14.3
  2. Si la mise à niveau est retardée :
    • Désactivez le webhook d'admission de validation (--enable-validating-webhook=false)
    • Restreignez l'accès réseau au service d'admission à l'aide de NetworkPolicy
  3. Surveillez les pods ingress-nginx pour détecter une utilisation mémoire anormale / des redémarrages
  4. Envisagez des quotas de ressources + limites mémoire sur l'espace de noms ingress-nginx
  5. Auditez qui peut atteindre les points de terminaison internes du webhook

Références

  • Problème officiel (supposé) : https://github.com/kubernetes/ingress-nginx/issues/136680
  • Avis de sécurité ingress-nginx : https://kubernetes.github.io/ingress-nginx/security/
  • Dépôt du projet : https://github.com/kubernetes/ingress-nginx
  • Entrée CVE NVD : https://nvd.nist.gov/vuln/detail/CVE-2026-24514

Divulgation responsable et crédit du PoC : Mohammed Idrees Banyamer (@banyamer_security)

Télécharger l’outil