Você está vendo a documentação do Anthos Service Mesh 1.9. Veja uma mais recente ou selecione outra versão disponível:

Boletins de segurança

Use este feed XML para se inscrever nos boletins de segurança do Anthos Service Mesh. Assinar

Nesta página, listamos os boletins de segurança do Anthos Service Mesh.

GCP-2021-016

Publicado: 2021-08-24
Descrição Gravidade Observações

O Istio tem uma vulnerabilidade que pode ser explorada remotamente, em que uma solicitação HTTP com um fragmento (uma seção no final de um URI que começa com um caractere #) no caminho de URI pode ignorar a URI com base em caminho. políticas de autorização.

Por exemplo, uma política de autorização do Istio nega as solicitações enviadas ao caminho de URI /user/profile. Nas versões vulneráveis, uma solicitação com o caminho de URI /user/profile#section1 ignora a política de negação e encaminha para o back-end (com o caminho de URI normalizado /user/profile%23section1), o que leva a um incidente de segurança.

Essa correção depende de uma correção no Envoy, que está associada à CVE-2021-32779.

O que fazer?

Veja se os clusters foram afetados

Seu cluster será afetado se as duas condições a seguir forem verdadeiras:

Mitigação

Faça upgrade do cluster para uma das seguintes versões com patch:

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

Com as novas versões, a parte do fragmento do URI da solicitação é removida antes da autorização e do roteamento. Isso impede que uma solicitação com um fragmento no URI ignore políticas de autorização baseadas no URI sem a parte do fragmento.

Desativar

Se você desativar esse novo comportamento, a seção de fragmento no URI será mantida. Para desativar, configure sua instalação da seguinte maneira:


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"

Observação: desativar esse comportamento torna seu cluster vulnerável a esse CVE.

Alta

CVE-2021-39156

Descrição Gravidade Observações

O Istio tem uma vulnerabilidade que pode ser explorada remotamente, em que uma solicitação HTTP pode ignorar uma política de autorização do Istio ao usar regras baseadas em hosts ou notHosts.

Nas versões vulneráveis, a política de autorização do Istio compara os cabeçalhos Host ou :authority de HTTP com diferenciação de maiúsculas e minúsculas, o que é inconsistente com o RFC 4343. Por exemplo, o usuário pode ter uma política de autorização que rejeita solicitações com o host secret.com, mas o invasor pode ignorar isso enviando a solicitação no nome do host Secret.com. O fluxo de roteamento encaminha o tráfego para o back-end de secret.com, o que causa um incidente de segurança.

O que fazer?

Veja se os clusters foram afetados

Seu cluster será afetado se as duas condições a seguir forem verdadeiras:

Mitigação

Faça upgrade do cluster para uma das seguintes versões com patch:

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

Essa mitigação garante que os cabeçalhos HTTP Host ou :authority sejam avaliados em relação às especificações hosts ou notHosts nas políticas de autorização, sem diferenciar maiúsculas de minúsculas.

Alta

CVE-2021-39155

Descrição Gravidade Observações

O Envoy contém uma vulnerabilidade que pode ser explorada remotamente e que uma solicitação HTTP com vários cabeçalhos de valor pode fazer uma verificação de política de autorização incompleta quando a extensão ext_authz é usada. Quando um cabeçalho de solicitação contém vários valores, o servidor de autorização externo verá apenas o último valor do cabeçalho fornecido.

O que fazer?

Veja se os clusters foram afetados

Seu cluster será afetado se as duas condições a seguir forem verdadeiras:

  • Ele usa as versões de patch do Anthos Service Mesh anteriores a 1.7.8-asm.10, 1.8.6-asm.8, 1.9.8-asm.1 e 1.10.4-asm.6.
  • Ele usa o recurso Autorização externa.
Mitigação

Faça upgrade do cluster para uma das seguintes versões com patch:

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

Alta

CVE-2021-32777

Descrição Gravidade Observações

O Envoy contém uma vulnerabilidade que pode ser explorada remotamente e afeta as extensões decompressor, json-transcoder ou grpc-web do Envoy ou extensões proprietárias que modificam e aumentam o tamanho dos corpos de solicitação ou resposta. Modificar e aumentar o tamanho do corpo em uma extensão do Envoy além do tamanho do buffer interno pode levar o Envoy a acessar a memória desalocada e encerrar de forma anormal.

O que fazer?

Veja se os clusters foram afetados

Seu cluster será afetado se as duas condições a seguir forem verdadeiras:

  • Ele usa as versões de patch do Anthos Service Mesh anteriores a 1.7.8-asm.10, 1.8.6-asm.8, 1.9.8-asm.1 e 1.10.4-asm.6.
  • Ele usa EnvoyFilters.
Mitigação

Faça upgrade do cluster para uma das seguintes versões com patch:

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

Alta

CVE-2021-32781

Descrição Gravidade Observações

O Envoy contém uma vulnerabilidade remotamente explorada, em que uma abertura de cliente do Envoy e, em seguida, redefinir um grande número de solicitações HTTP/2 pode levar ao consumo excessivo da CPU.

O que fazer?

Veja se os clusters foram afetados

O cluster será afetado se usar as versões de patch do Anthos Service Mesh anteriores a 1.7.8-asm.10, 1.8.6-asm.8, 1.9.8-asm.1 e 1.10.4-asm.6.

Mitigação

Faça upgrade do cluster para uma das seguintes versões com patch:

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

Observação: se você estiver usando o Anthos Service Mesh 1.8 ou anterior, faça upgrade para as versões de patch mais recentes do Anthos Service Mesh 1.9 e mais recentes para reduzir essa vulnerabilidade.

Alta

CVE-2021-32778

Descrição Gravidade Observações

O Envoy contém uma vulnerabilidade que pode ser explorada remotamente, em que um serviço upstream não confiável pode fazer com que o Envoy seja encerrado de maneira anormal, enviando o frame GOAWAY seguido do frame SETTINGS com o parâmetro SETTINGS_MAX_CONCURRENT_STREAMS definido como 0.

O que fazer?

Veja se os clusters foram afetados

O cluster será afetado se usar o Anthos Service Mesh 1.10 com uma versão de patch anterior à 1.10.4-asm.6.

Mitigação

Faça upgrade do cluster para a seguinte versão de patch:

  • 1.10.4-asm.6

Alta

CVE-2021-32780

GCP-2021-012

Publicado: 2021-06-24
Descrição Gravidade Observações

O Gateway seguro do Istio ou as cargas de trabalho que usam DestinationRule podem carregar chaves privadas e certificados TLS de segredos do Kubernetes pela configuração credentialName. A partir do Istio 1.8, os secrets são lidos no istiod e transmitidos para gateways e cargas de trabalho pelo XDS.

Normalmente, uma implantação de gateway ou carga de trabalho só consegue acessar certificados TLS e chaves privadas armazenadas no secret dentro do namespace. No entanto, um bug em istiod permite que um cliente autorizado acesse a API Istio XDS e recupere qualquer certificado TLS e chaves privadas armazenadas em cache em istiod. Essa vulnerabilidade de segurança afeta apenas as versões secundárias 1.8 e 1.9 do Anthos Service Mesh.

O que fazer?

Veja se os clusters foram afetados

Seu cluster será afetado se TODAS as condições a seguir forem verdadeiras:

  • Está usando uma versão 1.9.x anterior a 1.9.6-asm.1 ou uma 1.8.x anterior a 1.8.6-asm.4.
  • Definiu Gateways ou DestinationRules com o campo credentialName especificado.
  • Não especifica a sinalização PILOT_ENABLE_XDS_CACHE=false do istiod.
Mitigação

Faça upgrade do cluster para uma das seguintes versões com patch:

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

Se não for possível fazer um upgrade, reduza essa vulnerabilidade desativando o armazenamento em cache do istiod. É possível desativar o armazenamento em cache definindo a variável de ambiente istiod como PILOT_ENABLE_XDS_CACHE=false. O desempenho do sistema e do istiod pode ser afetado porque isso desativa o armazenamento em cache do XDS.

Alta

CVE-2021-34824

GCP-2021-008

Publicado: 17/05/2021
Descrição Gravidade Observações

O Istio tem uma vulnerabilidade que pode ser explorada remotamente, em que um cliente externo pode acessar serviços inesperados no cluster, ignorando as verificações de autorização, quando um gateway está configurado com a configuração de roteamento AUTO_PASSTHROUGH.

O que fazer?

Veja se os clusters foram afetados

Essa vulnerabilidade afeta somente o uso do tipo de gateway AUTO_PASSTHROUGH, que normalmente é usado apenas em implantações de vários clusters e várias redes.

Detecte o modo TLS de todos os gateways no cluster com o seguinte comando:


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

Se a saída mostrar quaisquer gateways AUTO_PASSTHROUGH, você poderá ser afetado.

Mitigação

Atualize seus clusters para as versões mais recentes do Anthos Service Mesh:

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

* Observação: o lançamento do plano de controle gerenciado do Anthos Service Mesh (disponível apenas nas versões 1.9.x) será concluído nos próximos dias.

Alta

CVE-2021-31921

GCP-2021-007

Publicado: 17/05/2021
Descrição Gravidade Observações

O Istio tem uma vulnerabilidade que pode ser explorada remotamente, em que um caminho de solicitação HTTP com várias barras ou caracteres de barra de escape (%2F ou %5C) tem a possibilidade de ignorar uma política de autorização do Istio quando regras de autorização baseadas em caminho forem usadas.

Em um cenário em que um administrador de cluster do Istio define uma política DENY de autorização para rejeitar a solicitação no caminho "/admin", uma solicitação enviada para o caminho do URL "//admin" NÃO será rejeitada pela política de autorização.

De acordo com a RFC 3986, o caminho "//admin" com várias barras precisa ser tecnicamente tratado como um caminho diferente do "/admin". No entanto, alguns serviços de back-end escolhem normalizar os caminhos do URL mesclando várias barras em uma única barra. Isso pode fazer com que a política de autorização ("//admin" não corresponde a "/admin") seja ignorada, e um usuário pode acessar o recurso no caminho "/admin" no back-end.

O que fazer?

Veja se os clusters foram afetados

Seu cluster será afetado por essa vulnerabilidade se você tiver políticas de autorização que usam os padrões "ALLOW action + notPaths field" ou "DENY action + paths field". Esses padrões são vulneráveis aos desvios inesperados da política, e você precisa fazer o upgrade para corrigir o problema de segurança o mais rápido possível.

O exemplo a seguir mostra uma política vulnerável que usa o padrão "DENY action + paths field":


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

Veja a seguir outro exemplo de política vulnerável que usa o padrão "ALLOW action + notPaths field":


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

O cluster não será afetado por essa vulnerabilidade nestas situações:

  • Você não tem políticas de autorização.
  • Suas políticas de autorização não definem campos paths ou notPaths.
  • Suas políticas de autorização usam os padrões "ALLOW action + paths field" ou "DENY action + notPaths field". Esses padrões só podem causar rejeições inesperadas em vez de ignorar políticas.
  • Nesses casos, o upgrade é opcional.

Mitigação

Atualize seus clusters para as versões compatíveis mais recentes do Anthos Service Mesh*. Estas versões são compatíveis com a configuração dos proxies do Envoy no sistema com mais opções de normalização:

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

* Observação: o lançamento do plano de controle gerenciado do Anthos Service Mesh (disponível apenas nas versões 1.9.x) será concluído nos próximos dias.

Siga o guia de práticas recomendadas de segurança do Istio para configurar políticas de autorização.

Alta

CVE-2021-31920

GCP-2021-004

Publicado: 06/05/2021
Descrição Gravidade Observações

Recentemente, os projetos do Envoy e do Istio anunciaram várias vulnerabilidades de segurança (CVE-2021-28682, CVE-2021-28683 e CVE-2021-29258), que poderiam permitir que um invasor derrubasse o Envoy e possivelmente renderizasse partes do cluster off-line e inacessíveis.

Isso afeta serviços entregues, como o Anthos Service Mesh.

O que fazer?

Para corrigir essas vulnerabilidades, faça upgrade do pacote do Anthos Service Mesh para uma das seguintes versões com patch:

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

Para mais informações, consulte as notas da versão do Anthos Service Mesh.

Alta

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