Vous consultez la documentation d'Anthos Service Mesh 1.10. Accédez à la documentation la plus récente ou sélectionnez une autre version disponible :

Bulletins de sécurité

Utilisez ce flux XML pour vous abonner aux bulletins de sécurité pour Anthos Service Mesh. S'abonner

Cette page répertorie les bulletins de sécurité pour Anthos Service Mesh.

GCP-2021-016

Date de publication : 2021-08-24
Description Niveau de gravité Remarques

Istio contient une faille exploitable à distance. Une requête HTTP comportant un fragment (une section à la fin d'un URI commençant par un caractère #) dans le chemin d'URI peut contourner les règles d'utilisation Istio basées sur le chemin d'URI.

Par exemple, une règle d'autorisation Istio refuse les requêtes envoyées au chemin d'URI /user/profile. Dans les versions vulnérables, une requête contenant le chemin d'URI /user/profile#section1 contourne la règle de refus et achemine vers le backend (avec le chemin d'URI normalisé /user/profile%23section1), ce qui entraîne un incident de sécurité.

Ce correctif dépend d'un correctif Envoy, associé à CVE-2021-32779.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté si les deux conditions suivantes sont remplies :

Atténuation

Mettez à niveau votre cluster vers l'une des versions corrigées suivantes :

  • 1.10.4-asm.6
  • 1.9.8-asm.1
  • 1.8.6-asm.8
  • 1.7.8-asm.10

Avec les nouvelles versions, la section du fragment de l'URI de la requête est supprimée avant l'autorisation et le routage. Cela empêche une requête comportant un fragment dans son URI de contourner les règles d'autorisation basées sur l'URI sans la partie fragment.

Désactiver

Si vous désactivez ce nouveau comportement, la section du fragment de l'URI est conservée. Pour désactiver, configurez votre installation comme suit :


apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  name: opt-out-fragment-cve-fix
  namespace: istio-system
spec:
  meshConfig:
    defaultConfig:
      proxyMetadata:
        HTTP_STRIP_FRAGMENT_FROM_PATH_UNSAFE_IF_DISABLED: "false"

Remarque : La désactivation de ce comportement rend votre cluster vulnérable à cette CVE.

Élevé

CVE-2021-39156

Description Niveau de gravité Remarques

Istio contient une faille exploitable à distance dans laquelle une requête HTTP peut potentiellement contourner une règle d'autorisation Istio lors de l'utilisation de règles basées sur hosts ou notHosts.

Dans les versions vulnérables, la règle d'autorisation Istio compare les en-têtes HTTP Host ou :authority de manière sensible à la casse, ce qui est incompatible avec la norme RFC 4343. Par exemple, l'utilisateur peut avoir une règle d'autorisation qui rejette les requêtes dont l'hôte est secret.com, mais le pirate informatique peut les contourner en envoyant la requête au nom d'hôte Secret.com. Le flux de routage achemine le trafic vers le backend pour secret.com, ce qui entraîne un incident de sécurité.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté si les deux conditions suivantes sont remplies :

Atténuation

Mettez à niveau votre cluster vers l'une des versions corrigées suivantes :

  • 1.10.4-asm.6
  • 1.9.8-asm.1
  • 1.8.6-asm.8
  • 1.7.8-asm.10

Cette mesure d'atténuation permet de s'assurer que les en-têtes HTTP Host ou :authority sont évalués par rapport aux spécifications hosts ou notHosts des règles d'autorisation, sans tenir compte de la casse.

Élevé

CVE-2021-39155

Description Niveau de gravité Remarques

Envoy contient une faille exploitable à distance. Une requête HTTP contenant plusieurs en-têtes de valeurs pourrait effectuer une vérification incomplète des règles d'autorisation lorsque l'extension ext_authz est utilisée. Lorsqu'un en-tête de requête contient plusieurs valeurs, le serveur d'autorisation externe n'affiche que la dernière valeur de l'en-tête donné.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté si les deux conditions suivantes sont remplies :

  • Il utilise des versions de correctif d'Anthos Service Mesh antérieures à 1.7.8-asm.10, 1.8.6-asm.8, 1.9.8-asm.1 et 1.10.4-asm.6.
  • Il utilise la fonctionnalité d'autorisation externe.
Atténuation

Mettez à niveau votre cluster vers l'une des versions corrigées suivantes :

  • 1.10.4-asm.6
  • 1.9.8-asm.1
  • 1.8.6-asm.8
  • 1.7.8-asm.10

Élevé

CVE-2021-32777

Description Niveau de gravité Remarques

Envoy contient une faille exploitable à distance qui affecte les extensions decompressor, json-transcoder ou grpc-web d'Envoy, ou les extensions propriétaires qui modifient et augmentent la taille des corps de requêtes ou de réponses. La modification et l'augmentation de la taille du corps d'une extension Envoy, au-delà de la taille du tampon interne, peuvent l'amener à accéder à la mémoire allouée et à s'arrêter de manière anormale.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté si les deux conditions suivantes sont remplies :

  • Il utilise des versions de correctif d'Anthos Service Mesh antérieures à 1.7.8-asm.10, 1.8.6-asm.8, 1.9.8-asm.1 et 1.10.4-asm.6.
  • Il utilise EnvoyFilters.
Atténuation

Mettez à niveau votre cluster vers l'une des versions corrigées suivantes :

  • 1.10.4-asm.6
  • 1.9.8-asm.1
  • 1.8.6-asm.8
  • 1.7.8-asm.10

Élevé

CVE-2021-32781

Description Niveau de gravité Remarques

Envoy présente une faille à exploiter à distance. Un client Envoy qui ouvre, puis réinitialise un grand nombre de requêtes HTTP/2 peut entraîner une consommation excessive du processeur.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté s'il utilise des versions de correctif Anthos Service Mesh antérieures aux versions 1.7.8-asm.10, 1.8.6-asm.8, 1.9.8-asm.1 et 1.10.4-asm.6.

Atténuation

Mettez à niveau votre cluster vers l'une des versions corrigées suivantes :

  • 1.10.4-asm.6
  • 1.9.8-asm.1

Remarque : Si vous utilisez Anthos Service Mesh 1.8 ou version antérieure, veuillez effectuer une mise à niveau vers les dernières versions de correctif d'Anthos Service Mesh 1.9 et versions ultérieures pour atténuer cette faille.

Élevé

CVE-2021-32778

Description Niveau de gravité Remarques

Envoy contient une faille exploitable à distance. Un service en amont non approuvé peut entraîner l'arrêt anormal d'Envoy en envoyant le frame GOAWAY suivi du frame SETTINGS avec le paramètre SETTINGS_MAX_CONCURRENT_STREAMS défini sur 0.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté s'il utilise Anthos Service Mesh 1.10 avec une version de correctif antérieure à la version 1.10.4-asm.6.

Atténuation

Mettez à niveau votre cluster vers la version de correctif suivante :

  • 1.10.4-asm.6

Élevé

CVE-2021-32780

GCP-2021-012

Date de publication : 24/06/2021
Description Niveau de gravité Remarques

La passerelle (Gateway) sécurisée Istio ou les charges de travail utilisant la DestinationRule peuvent charger les clés privées et les certificats TLS à partir des secrets Kubernetes via la configuration de credentialName. À partir d'Istio 1.8 et versions ultérieures, les secrets sont lus à partir de istiod, et transmis aux passerelles et aux charges de travail via XDS.

Normalement, un déploiement de passerelle ou de charge de travail ne peut accéder qu'aux certificats TLS et aux clés privées stockées dans le secret au sein de son espace de noms. Cependant, un bug dans istiod permet à un client autorisé à accéder à l'API XDS Istio de récupérer tous les certificats TLS et clés privées mises en cache dans istiod. Cette faille de sécurité ne concerne que les versions mineures 1.8 et 1.9 d'Anthos Service Mesh.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté si TOUTES les conditions suivantes sont remplies :

  • Il utilise une version 1.9.x antérieure à 1.9.6-asm.1 ou une version 1.8.x antérieure à 1.8.6-asm.4.
  • Il a défini Gateways ou DestinationRules avec le champ credentialName spécifié.
  • Il ne spécifie pas l'option istiod PILOT_ENABLE_XDS_CACHE=false.
Atténuation

Mettez à niveau votre cluster vers l'une des versions corrigées suivantes :

  • 1.9.6-asm.1
  • 1.8.6-asm.4

Si une mise à niveau n'est pas possible, vous pouvez atténuer cette faille en désactivant la mise en cache istiod. Vous pouvez désactiver la mise en cache en définissant la variable d'environnement istiod sur PILOT_ENABLE_XDS_CACHE=false. Les performances du système et de istiod peuvent être affectées, car cela désactive la mise en cache XDS.

Élevé

CVE-2021-34824

GCP-2021-008

Date de publication : 17/05/2021
Description Niveau de gravité Remarques

Istio souffre d'une faille utilisable à distance. Un client externe peut accéder à des services inattendus du cluster, en contournant les vérifications d'autorisation, lorsqu'une passerelle est configurée avec la configuration de routage AUTO_PASSTHROUGH.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Cette faille n'affecte que l'utilisation du type de passerelle AUTO_PASSTHROUGH, qui n'est généralement utilisée que dans les déploiements multiréseaux et multiclusters.

Détectez le mode TLS de toutes les passerelles du cluster à l'aide de la commande suivante :


kubectl get gateways.networking.istio.io -A -o \
  "custom-columns=NAMESPACE:.metadata.namespace, \
  NAME:.metadata.name,TLS_MODE:.spec.servers[*].tls.mode"

Si le résultat affiche des passerelles AUTO_PASSTHROUGH, il se peut que vous soyez affecté par ce problème.

Atténuation

Mettez à jour vos clusters vers les dernières versions d'Anthos Service Mesh :

  • 1.9.5-asm.2
  • 1.8.6-asm.3
  • 1.7.8-asm.8

* Remarque : Le déploiement du plan de contrôle géré d'Anthos Service Mesh (disponible uniquement dans les versions 1.9.x) sera terminé dans les prochains jours.

Élevé

CVE-2021-31921

GCP-2021-007

Date de publication : 17/05/2021
Description Niveau de gravité Remarques

Istio souffre d'une faille utilisable à distance. Un chemin de requête HTTP avec plusieurs barres obliques ou barres obliques échappées (%2F ou %5C) est susceptible de contourner une règle d'autorisation Istio lorsque des règles d'autorisation basées sur le chemin sont utilisées.

Dans un scénario où un administrateur de cluster Istio définit une règle d'autorisation DENY pour refuser la requête avec le chemin "/admin", une requête envoyée au chemin d'URL "//admin" n'est PAS rejetée par la règle d'autorisation.

Selon le document RFC 3986, le chemin d'accès "//admin" comportant plusieurs barres obliques doit être techniquement considéré comme un chemin différent du chemin "/admin". Toutefois, certains services de backend choisissent de normaliser les chemins d'URL en fusionnant plusieurs barres obliques en une seule barre oblique. Cela peut entraîner le contournement de la règle d'autorisation ("//admin" ne correspond pas à "/admin") et un utilisateur peut accéder à la ressource sur le chemin "/admin" dans le backend.

Que dois-je faire ?

Vérifiez si vos clusters sont affectés.

Votre cluster est affecté par cette faille si vous utilisez les règles d'autorisation aux formats suivants : "action ALLOW + champ notPaths" ou "action DENY action + champ paths". Ces formats étant susceptibles d'entraîner des contournements inattendus de règles, vous devez effectuer une mise à niveau pour résoudre le problème de sécurité au plus vite.

Voici un exemple de règle vulnérable qui utilise le format "action DENY + champ paths" :


apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
  name: deny-path-admin
spec:
  action: DENY
  rules:
  - to:
    - operation:
        paths: ["/admin"]

Voici un autre exemple de règle vulnérable qui utilise le format "action ALLOW + champ notPaths" :


apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
  name: allow-path-not-admin
spec:
  action: ALLOW
  rules:
  - to:
    - operation:
        notPaths: ["/admin"]

Votre cluster n'est pas affecté par cette faille si :

  • vous n'avez pas défini de règles d'autorisation ;
  • vos règles d'autorisation ne définissent pas de champs paths ni notPaths ;
  • vos règles d'autorisation utilisent le format "action ALLOW + champ notPaths" ou "action DENY + champ paths". Ces formats pourraient seulement entraîner des refus inattendus au lieu de contourner les règles.
  • La mise à niveau est facultative dans ces cas.

Atténuation

Mettez à jour vos clusters vers les dernières versions d'Anthos Service Mesh compatibles*. Ces versions permettent de configurer les proxys Envoy dans le système avec des options de normalisation supplémentaires :

  • 1.9.5-asm.2
  • 1.8.6-asm.3
  • 1.7.8-asm.8

* Remarque : Le déploiement du plan de contrôle géré d'Anthos Service Mesh (disponible uniquement dans les versions 1.9.x) sera terminé dans les prochains jours.

Suivez le guide des bonnes pratiques de sécurité d'Istio pour configurer vos règles d'autorisation.

Élevé

CVE-2021-31920

GCP-2021-004

Date de publication : 06/05/2021
Description Niveau de gravité Remarques

Les projets Envoy et Istio ont récemment annoncé plusieurs nouvelles failles de sécurité (CVE-2021-28682, CVE-2021-28683 et CVE-2021-29258) qui pourraient permettre à un pirate informatique de planter Envoy et de rendre potentiellement accessibles certaines parties du cluster hors ligne et inaccessibles.

Ceci a un impact sur les services fournis tels qu'Anthos Service Mesh.

Que dois-je faire ?

Pour corriger ces failles, mettez à niveau votre groupe Anthos Service Mesh vers l'une des versions corrigées suivantes :

  • 1.9.3-asm.2
  • 1.8.5-asm.2
  • 1.7.8-asm.1
  • 1.6.14-asm.2

Pour en savoir plus, consultez les notes de version d'Anthos Service Mesh.

Élevé

CVE-2021-28682
CVE-2021-28683
CVE-2021-29258