OpenShift - Compte de Service Manquant
Reading time: 1 minute
Compte de Service Manquant
Il arrive qu'un cluster soit déployé avec un modèle préconfiguré définissant automatiquement des Rôles, des Liens de Rôle et même des SCC pour un compte de service qui n'est pas encore créé. Cela peut conduire à une élévation de privilèges dans le cas où vous pouvez les créer. Dans ce cas, vous seriez en mesure d'obtenir le jeton du compte de service nouvellement créé et le rôle ou le SCC associé. Le même cas se produit lorsque le compte de service manquant fait partie d'un projet manquant, dans ce cas, si vous pouvez créer le projet puis le compte de service, vous obtenez les Rôles et le SCC associés.

Dans le graphique précédent, nous avons plusieurs AbsentProject signifiant plusieurs projets qui apparaissent dans les Liens de Rôle ou le SCC mais qui ne sont pas encore créés dans le cluster. Dans le même ordre d'idées, nous avons également un AbsentServiceAccount.
Si nous pouvons créer un projet et le compte de service manquant dans celui-ci, le compte de service héritera du Rôle ou du SCC qui visaient l'AbsentServiceAccount. Ce qui peut conduire à une élévation de privilèges.
L'exemple suivant montre un compte de service manquant qui se voit accorder le SCC node-exporter :

Outils
L'outil suivant peut être utilisé pour énumérer ce problème et plus généralement pour cartographier un cluster OpenShift :