Si vous souhaitez voir votre entreprise annoncée dans HackTricks ou si vous souhaitez accéder à la dernière version de PEASS ou télécharger HackTricks en PDF, consultez les PLANS D'ABONNEMENT !
Kubernetes connecte par défaut tous les conteneurs s'exécutant sur le même nœud (même s'ils appartiennent à des espaces de noms différents) jusqu'au niveau 2 (Ethernet). Cela permet à un conteneur malveillant d'effectuer une attaque d'usurpation ARP sur les conteneurs du même nœud et de capturer leur trafic.
Dans le scénario, 4 machines vont être créées :
ubuntu-pe : machine privilégiée pour s'échapper vers le nœud et vérifier les métriques (pas nécessaire pour l'attaque)
ubuntu-attack : conteneur malveillant dans l'espace de noms par défaut
ubuntu-victim : machine victime dans l'espace de noms kube-system
mysql : machine victime dans l'espace de noms par défaut
Si vous souhaitez plus de détails sur les sujets de mise en réseau introduits ici, consultez les références.
ARP
En général, la mise en réseau pod-à-pod à l'intérieur du nœud est disponible via un pont qui connecte tous les pods. Ce pont est appelé "cbr0". (Certains plugins réseau installeront leur propre pont.) Le cbr0 peut également gérer la résolution ARP (Address Resolution Protocol). Lorsqu'un paquet entrant arrive à cbr0, il peut résoudre l'adresse MAC de destination à l'aide d'ARP.
Ce fait implique que, par défaut, chaque pod s'exécutant sur le même nœud va être en mesure de communiquer avec n'importe quel autre pod sur le même nœud (indépendamment de l'espace de noms) au niveau Ethernet (couche 2).
Par conséquent, il
Dans la machine Ubuntu
dig google.com [...] ;; SECTION DE RÉPONSE: google.com. 1 IN A 1.1.1.1
<div data-gb-custom-block data-tag="hint" data-style='info'>
Si vous essayez de créer votre propre script de détournement de DNS, si vous **modifiez simplement la réponse DNS**, cela ne va **pas fonctionner**, car la **réponse** aura une **adresse IP source** l'adresse IP du **pod malveillant** et ne sera **pas acceptée**.\
Vous devez générer un **nouveau paquet DNS** avec l'**adresse IP source** du **DNS** où la victime envoie la demande DNS (qui ressemble à 172.16.0.2, pas 10.96.0.10, c'est l'adresse IP du service DNS K8s et non l'adresse IP du serveur DNS, plus d'informations à ce sujet dans l'introduction).
</div>
## Capture de trafic
L'outil [**Mizu**](https://github.com/up9inc/mizu) est un visualiseur de trafic API simple mais puissant pour Kubernetes qui vous permet de **visualiser toutes les communications API** entre les microservices pour vous aider à déboguer et à résoudre les régressions.\
Il installera des agents dans les pods sélectionnés, recueillera leurs informations de trafic et vous les montrera dans un serveur web. Cependant, vous aurez besoin de permissions K8s élevées pour cela (et ce n'est pas très discret).
## Références
* [https://www.cyberark.com/resources/threat-research-blog/attacking-kubernetes-clusters-through-your-network-plumbing-part-1](https://www.cyberark.com/resources/threat-research-blog/attacking-kubernetes-clusters-through-your-network-plumbing-part-1)
* [https://blog.aquasec.com/dns-spoofing-kubernetes-clusters](https://blog.aquasec.com/dns-spoofing-kubernetes-clusters)
<details>
<summary><strong>Soutenez HackTricks et obtenez des avantages !</strong></summary>
* Si vous voulez voir votre **entreprise annoncée dans HackTricks** ou si vous voulez accéder à la **dernière version de PEASS ou télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)!
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs
* **Rejoignez** 💬 [**le groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm).
* **Partagez vos astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>