
Dans ce projet, nous avons détecté une attaque récente via le conteneur malveillant et mis en place un mécanisme de sécurité pour la bloquer.
Dans ce projet, nous avons découvert une récente attaque via le conteneur malveillant et mis en œuvre un mécanisme de sécurité pour l'arrêter.
Les cyberattaques sont devenues un défi critique pour les entreprises comme pour les petites entreprises, en grande partie en raison des vulnérabilités dans divers composants de leurs ressources informatiques. Comprendre ces menaces est la première étape pour protéger les données et les actifs d'une organisation. Les formes courantes d'attaques incluent les logiciels malveillants, les rançongiciels et le hameçonnage. Des études récentes soulignent la prévalence croissante des attaques ciblant les infrastructures de conteneurs. Les adversaires exploitent souvent des conteneurs mal configurés en les localisant via des moteurs de recherche publics et des outils d'analyse.
Ainsi, dans ce projet, nous avons implémenté une attaque utilisant une vulnérabilité Docker CVE-2019-5736 et identifié un mécanisme de sécurité pour prévenir une attaque.
Nous avons utilisé la configuration suivante pour implémenter en toute sécurité une attaque et un mécanisme de sécurité. Sur la machine de base avec le système d'exploitation Windows, le poste de travail VMware a été déployé avec la machine virtuelle Ubuntu 18.04. De plus, l'application de conteneur Docker 18.03.1-ce (Runc 1.0.0-rc5) a été installée sur Ubuntu 18.04.
Le fichier « usr/docker/runc » est un fichier exécutable interne sensible que tout utilisateur tiers ne devrait pas pouvoir modifier. Cependant, la version 18.03 de Docker présente la vulnérabilité par laquelle elle ne journalise pas la modification du fichier docker « runc » ; par conséquent, l'attaquant peut utiliser cette vulnérabilité pour modifier le fichier « usr/docker/runc » et obtenir un accès root à notre système Linux.
En conséquence :
La cause première de cette vulnérabilité est la capacité de l'image Docker malveillante à modifier le fichier « /usr/docker/runc » et à inclure le code hostile dans le fichier exécutable.
Pour empêcher cette attaque, nous utilisons la commande « Chattr » pour rendre le fichier « /usr/docker/runc » immuable. Par conséquent, l'exploit ne s'exécute pas et il n'y a aucune réponse du côté de l'attaquant.
Le mécanisme de sécurité que nous avons appliqué arrête effectivement l'attaque, ce qui signifie que nous avons pu empêcher le code malveillant d'exploiter la vulnérabilité de ce fichier docker spécifique que nous avons trouvé. Pour le mécanisme de sécurité, nous ne pouvions pas utiliser la commande « chmod » car, dans cette vulnérabilité spécifique que nous avons utilisée, l'accès root est accordé à l'attaquant. Ainsi, la commande « chmod » ne pouvait pas empêcher une attaque.
Dans ce projet, nous avons choisi d'implémenter une attaque exploitant la vulnérabilité CVE-2019-5736 avec un score CVSS ÉLEVÉ, qui permet à un attaquant d'accéder à distance à la machine de l'utilisateur avec des privilèges root. Nous avons exécuté l'attaque avec succès et trouvé le mécanisme de sécurité pour la prévenir.
Défis :