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
subpath-exploit — Analyse de CVE-2017-1002101 avec un exemple d'"exploit"/escape | Kitploit
Outils/GitHubGitHub/bgeesaman/subpath-exploit
Analyse des VulnérabilitésExploitationSécurité CloudApprentissage et ÉducationÉvasion de ConteneurLabs et Pratique
GitHubbgeesaman/subpath-exploit

subpath-exploit

Analyse de CVE-2017-1002101 avec un exemple d'"exploit"/escape

Voir le dépôt
342il y a 8 ansVérifié par Kitploit

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 →
Partager
Site web

Échappement Kubernetes Exemple via CVE-2017-1002101

Description

Après avoir entendu parler du problème et suivi ce guide, j'ai voulu explorer les choses un peu plus. Ce dépôt contient quelques déploiements de pods et des scripts shell d'assistance qui démontrent le mécanisme d'attaque de la manière la plus simple possible, afin que les administrateurs et opérateurs Kubernetes puissent pleinement comprendre la gravité et les risques potentiels. Vous devez être un utilisateur authentifié ou pouvoir contrôler la spécification/le modèle d'un pod lors de sa création, donc cet échappement n'est probablement pas anonyme à moins d'être combiné avec d'autres attaques comme celle-ci.

Explication rapide

Lorsque le Kubelet monte un volume/secret/configmap, etc., il suit incorrectement les liens symboliques à l'intérieur du volume vers des emplacements en dehors du périmètre où il le devrait. Parce que le Kubelet s'exécute en tant que root, cela signifie qu'il peut être piégé pour monter des parties privilégiées du système de fichiers de l'hôte à l'intérieur du conteneur d'un pod non privilégié.

Mon approche a été d'utiliser un seul pod avec deux conteneurs "normaux". Un conteneur crée le lien symbolique vers / ou /home/ubuntu et l'autre fait des crashloop jusqu'à ce que cela réussisse (forçant le volume à être remonté et suivant ce chemin de lien symbolique), permettant à l'utilisateur d'exécuter exec dans le second conteneur et d'accéder au point de montage.

Exécution rapide

Remarque : Ces exemples fonctionnent sans modification sur un hôte Ubuntu 16.04, mais ils peuvent être facilement adaptés pour d'autres configurations.

  1. Examinez les fichiers dans le dépôt avant d'exécuter quoi que ce soit.
  2. Exécutez ./run-as-root.sh si votre cluster est relativement "standard".
  3. Exécutez ./run-as-root-no-chroot.sh ou ./run-as-user-1000.sh pour d'autres variantes.

asciicast

Stratégie d'atténuation

C'est vraiment une situation où il est impératif d'appliquer le correctif. Malheureusement, les contournements listés ici ne sont pas vraiment pratiques pour la plupart des gens. Presque toutes les versions antérieures sont vulnérables.

Références

  • https://github.com/kubernetes/kubernetes/issues/60813
  • https://nvd.nist.gov/vuln/detail/CVE-2017-1002101
  • https://www.twistlock.com/2018/03/21/deep-dive-severe-kubernetes-vulnerability-date-cve-2017-1002101/
Télécharger l’outil