Opções de mitigação das 10 principais OWASP de 2021 em Google Cloud

Last reviewed 2024-07-31 UTC

Este documento ajuda a identificar Google Cloud produtos e estratégias de mitigação que podem ajudar a defender-se contra ataques comuns ao nível da aplicação descritos no OWASP Top 10. O OWASP Top 10 é uma lista da Open Web Application Security (OWASP) Foundation dos 10 principais riscos de segurança de que todos os proprietários de aplicações devem ter conhecimento. Embora nenhum produto de segurança possa garantir a proteção total contra estes riscos, a aplicação destes produtos e serviços quando fazem sentido na sua arquitetura pode contribuir para uma solução de segurança de várias camadas forte.

A infraestrutura da Google foi concebida para ajudar a criar, implementar e operar serviços de forma segura. A segurança física e operacional, a encriptação de dados em repouso e em trânsito, e muitas outras facetas importantes de uma infraestrutura segura são geridas pela Google. Herda estas vantagens implementando as suas aplicações no Google Cloud, mas pode ter de tomar medidas adicionais para proteger a sua aplicação contra ataques específicos.

As estratégias de mitigação indicadas neste documento estão ordenadas por risco de segurança da aplicação e Google Cloud produto. Muitos produtos desempenham um papel na criação de uma estratégia de defesa em profundidade contra riscos de segurança Web. Este documento fornece informações sobre como outros produtos podem mitigar os riscos do OWASP Top 10, mas fornece detalhes adicionais sobre como o Google Cloud Armor e o Apigee podem mitigar uma vasta gama desses riscos. O Google Cloud Armor, que funciona como uma firewall de aplicação Web (WAF), e o Apigee, que funciona como uma gateway de API, podem ser especialmente úteis para bloquear diferentes tipos de ataques. Estes produtos estão no caminho do tráfego da Internet e podem bloquear o tráfego externo antes de chegar às suas aplicações no Google Cloud.

.

Vistas gerais de produtos

Os Google Cloud produtos indicados na tabela seguinte podem ajudar a defender-se contra os 10 principais riscos de segurança:

Produto Resumo A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
Transparência de acesso Beneficie de maior visibilidade e controlo do fornecedor de serviços na nuvem com registos de acesso de administrador e controlos de aprovação
Apigee Conceba, proteja e dimensione interfaces de programação de aplicações
Artifact Registry Armazena centralmente artefactos e cria dependências
Autorização binária Certifique-se de que apenas as imagens de contentores fidedignas são implementadas no Google Kubernetes Engine
Cloud Armor Uma firewall de app Web (WAF) implementada no limite da rede da Google para ajudar a defender-se contra vetores de ataque comuns
Cloud Asset Inventory Ver, monitorizar e analisar todos os seus recursos Google Cloud e do Google Distributed Cloud ou multinuvem em projetos e serviços
Cloud Build Crie, teste e implemente em Google Cloud
Cloud Key Management Service Faça a gestão das chaves de encriptação no Google Cloud
Cloud Load Balancing Controle as cifras que o seu proxy SSL ou balanceador de carga HTTPS negoceia
Cloud Logging Gestão e análise de registos em tempo real em grande escala
Cloud Monitoring Recolha e analise métricas, eventos e metadados de Google Cloud serviços e uma grande variedade de aplicações e serviços de terceiros
Cloud Source Repositories Armazene, faça a gestão e acompanhe o código num único local para a sua equipa
Google Security Operations Encontre automaticamente ameaças em tempo real e à escala através da infraestrutura, das técnicas de deteção e dos sinais da Google
Identity Platform Adicione capacidades de gestão de identidades e acessos às aplicações, proteja as contas de utilizador e dimensione a gestão de identidades
Identity-Aware Proxy (IAP) Use a identidade e o contexto para proteger o acesso às suas aplicações e VMs
reCAPTCHA Ajude a proteger o seu Website contra atividade fraudulenta, spam e abuso
Secret Manager Armazene chaves de API, palavras-passe, certificados e outros dados confidenciais
Security Command Center Visibilidade centralizada para análise de segurança e informações sobre ameaças para ajudar a identificar vulnerabilidades nas suas aplicações
Proteção de dados confidenciais Descubra, classifique e proteja os seus dados mais confidenciais
Chaves de segurança Titan Ajude a proteger utilizadores de elevado valor com dispositivos de 2FA resistentes a phishing criados com um chip de hardware (com firmware desenvolvido pela Google) para validar a integridade da chave
Firewalls da nuvem privada virtual Permita ou recuse ligações às suas instâncias de máquinas virtuais (VM) ou a partir destas
VirusTotal Analise ficheiros e URLs suspeitos para detetar tipos de software malicioso e partilhe-os automaticamente com a comunidade de segurança
VPC Service Controls Isolar recursos de serviços multi-inquilinos para mitigar os riscos de exfiltração de dados Google Cloud
Google Cloud boletins de segurança Os boletins de segurança mais recentes relacionados com Google Cloud produtos

A01: Controlo de acesso danificado

O controlo de acesso quebrado refere-se a controlos de acesso que são aplicados apenas parcialmente no lado do cliente ou implementados de forma fraca. A mitigação destes controlos requer frequentemente uma reescrita no lado da aplicação para aplicar corretamente que os recursos só são acedidos por utilizadores autorizados.

Apigee

Exemplo de utilização:

  • Aplicação do controlo de acesso
  • Limite a manipulação de dados

O Apigee suporta uma abordagem em camadas para implementar controlos de acesso para impedir que os intervenientes maliciosos façam alterações não autorizadas ou acedam ao sistema.

Configure o controlo de acesso baseado em funções (RBAC) para permitir apenas que os utilizadores acedam aos recursos e à configuração de que precisam. Crie mapas de chaves-valores encriptados para armazenar pares de chave-valor confidenciais, que aparecem ocultos na IU do Edge e nas chamadas da API de gestão. Configure o Início de sessão único com o Fornecedor de identidade da sua empresa.

Configure portais do programador para mostrar produtos de API específicos de acordo com a função do utilizador. Configure o portal para mostrar ou ocultar conteúdo com base na função do utilizador.

Cloud Asset Inventory

Exemplo de utilização:

  • Monitorize a existência de TI não autorizadas (também conhecidas como TI clandestinas)
  • Instâncias de computação desatualizadas

Um dos vetores mais comuns de exposição de dados é a infraestrutura de TI órfã ou não autorizada. Configure notificações em tempo real para receber alertas sobre recursos em execução inesperados, que podem estar incorretamente protegidos ou a usar software desatualizado.

Cloud Load Balancing

Exemplo de utilização:

  • Controlo detalhado das cifras SSL e TLS

Impeça a utilização de cifras SSL ou TLS fracas atribuindo um grupo predefinido ou uma lista personalizada de cifras que o Cloud Load Balancing pode utilizar.

Cloud Armor

Exemplo de utilização:

  • Filtre pedidos de origem cruzada
  • Filtre ataques de inclusão de ficheiros locais ou remotos
  • Filtre ataques de poluição de parâmetros HTTP

Muitos casos de controlo de acesso danificado não podem ser mitigados através de uma firewall de aplicações Web, porque as aplicações não exigem nem verificam corretamente os tokens de acesso para cada pedido, e os dados podem ser manipulados do lado do cliente. Vários desafios da Juice Shop relacionados com o controlo de acesso danificado. Por exemplo, publicar feedback em nome de outro utilizador usa o facto de alguns pedidos não serem autenticados do lado do servidor. Como pode ver na solução do desafio, o exploit desta vulnerabilidade é totalmente do lado do cliente e, por isso, não pode ser mitigado através do Cloud Armor.

Alguns desafios podem ser parcialmente mitigados no lado do servidor se não for possível aplicar imediatamente uma correção à aplicação.

Por exemplo, se forem possíveis ataques de falsificação em pedidos entre sites (CSRF) porque o seu servidor Web implementa a partilha de recursos de origem cruzada (CORS) de forma inadequada, conforme demonstrado no desafio CSRF Juice Shop, pode mitigar este problema bloqueando totalmente os pedidos de origens inesperadas com uma regra personalizada. A regra seguinte corresponde a todos os pedidos com origens diferentes de example.com e google.com:

has(request.headers['origin']) &&
!((request.headers['origin'] == 'https://example.com')||
(request.headers['origin'] == 'https://google.com') )

Quando o tráfego que corresponde a uma regra desse tipo é recusado, a solução para o desafio CSRF deixa de funcionar.

O desafio de manipulação do carrinho usa poluição de parâmetros HTTP (HPP) para que possa ver como atacar a loja seguindo a solução do desafio. O HPP é detetado como parte do conjunto de regras de ataque de protocolo. Para ajudar a bloquear este tipo de ataque, use a seguinte regra: evaluatePreconfiguredExpr('protocolattack-stable').

Identity-Aware Proxy e acesso sensível ao contexto

Exemplo de utilização:

  • Controlo de acesso centralizado
  • Funciona com a nuvem e no local
  • Protege as ligações HTTP e TCP
  • Acesso sensível ao contexto

O IAP permite-lhe usar a identidade e o contexto para formar uma firewall de autenticação e autorização segura em torno da sua aplicação. Evite a autorização ou o controlo de acesso danificados à sua aplicação virada para o público com um sistema de autenticação e autorização gerido centralmente criado no Cloud Identity e na IAM.

Aplique controlos de acesso detalhados a aplicações Web, VMs, APIs e aplicações do Google Workspace com base na identidade do utilizador e no contexto do pedido sem necessidade de uma VPN convencional. Google Cloud Use uma única plataforma para as aplicações na nuvem e os recursos da infraestrutura e das instalações.

Security Command Center

O Security Command Center inclui dois serviços que ajudam a resolver os controlos de acesso danificados: o Security Health Analytics e o Web Security Scanner.

O Security Health Analytics suporta os seguintes exemplos de utilização:

  • Aplicação da MFA ou da 2FA
  • Proteção da chave da API
  • Monitorização da política de SSL

A análise de estado de segurança ajuda a evitar o controlo de acesso danificado através da monitorização da conformidade com a autenticação multifator , a política SSL e o estado das suas chaves de API.

O Web Security Scanner suporta os seguintes exemplos de utilização:

  • Repositórios expostos ao público
  • Validação de cabeçalho do pedido não seguro

O Web Security Scanner analisa as suas aplicações Web para encontrar vulnerabilidades, como repositórios de código visíveis publicamente e validação incorreta dos cabeçalhos dos pedidos.

A02: Falhas criptográficas

As falhas criptográficas podem ocorrer devido à falta de encriptação ou à encriptação fraca em trânsito, ou à exposição acidental de dados confidenciais. Os ataques contra essas vulnerabilidades são, normalmente, específicos da aplicação e, por isso, precisam de uma abordagem de defesa em profundidade para mitigar.

Apigee

Exemplo de utilização:

  • Proteja os dados confidenciais

Use o TLS unidirecional e bidirecional para proteger informações confidenciais ao nível do protocolo.

Use políticas como a política Assign Message e a política JavaScript para remover dados confidenciais antes de serem devolvidos ao cliente.

Use técnicas OAuth padrão e considere adicionar HMAC, hash, estado, nonce, PKCE ou outras técnicas para melhorar o nível de autenticação de cada pedido.

Oculte dados confidenciais na ferramenta Edge Trace.

Encripte dados confidenciais em repouso em mapas de chaves-valores.

Cloud Asset Inventory

Exemplo de utilização:

  • Serviço de pesquisa
  • Analisador de acesso

Um dos vetores mais comuns de exposição de dados é a infraestrutura de TI órfã ou não autorizada. Pode identificar servidores que ninguém está a manter e contentores com regras de partilha demasiado amplas analisando os dados de séries cronológicas de recursos na nuvem.

Configure notificações em tempo real para receber alertas sobre o aprovisionamento inesperado de recursos que podem estar protegidos de forma inadequada ou não autorizados.

API Cloud Data Loss Prevention (parte da proteção de dados confidenciais)

Exemplo de utilização:

  • Classificação e deteção de dados confidenciais
  • Máscara de dados automática

A API Cloud Data Loss Prevention (API DLP) permite-lhe procurar dados potencialmente confidenciais armazenados em contentores ou bases de dados para evitar a fuga de informações não intencional. Se forem identificados dados não permitidos, estes podem ser automaticamente denunciados ou ocultados.

Cloud Key Management Service

Exemplo de utilização:

  • Gestão de chaves criptográficas seguras

(Cloud KMS) ajuda a evitar a potencial exposição das suas chaves criptográficas. Use este serviço de gestão de chaves alojado na nuvem para gerir chaves criptográficas simétricas e assimétricas para os seus serviços na nuvem da mesma forma que o faz no local. Pode gerar, usar, rodar e destruir chaves criptográficas AES256, RSA 2048, RSA 3072, RSA 4096, EC P256 e EC P384.

Cloud Load Balancing

Exemplo de utilização:

  • Controlo detalhado das cifras SSL e TLS

As políticas de SSL podem ajudar a evitar a exposição de dados confidenciais, dando-lhe o controlo sobre as funcionalidades e as cifras SSL e TLS permitidas num equilibrador de carga. Bloqueie cifras não aprovadas ou inseguras conforme necessário.

Cloud Armor

Exemplo de utilização:

  • Filtre URLs de ataques conhecidos
  • Restrinja o acesso a pontos finais confidenciais

Em geral, a exposição de dados confidenciais deve ser interrompida na origem, mas, como cada ataque é específico da aplicação, as firewalls de aplicações Web só podem ser usadas de forma limitada para interromper a exposição de dados de forma geral. No entanto, se não for possível aplicar imediatamente uma correção à sua aplicação, pode restringir o acesso a padrões de pedidos ou endpoints vulneráveis através de regras personalizadas do Cloud Armor.

Por exemplo, vários desafios da Juice Shop sobre a exposição de dados confidenciais podem ser explorados devido à travessia de diretórios não segura e a ataques de injeção de bytes nulos. Pode mitigar estas injeções verificando as strings no URL com a seguinte expressão personalizada:

request.path.contains("%00") || request.path.contains("%2500")

Pode resolver o desafio das métricas expostas acedendo ao subdiretório /metrics usado pelo Prometheus. Se tiver um ponto final sensível exposto e não puder remover imediatamente o acesso, pode restringir o acesso ao mesmo, exceto para determinados intervalos de endereços IP. Use uma regra semelhante à seguinte expressão personalizada:

request.path.contains("/metrics") && !(inIpRange(origin.ip, '1.2.3.4/32')

Substitua 1.2.3.4/32 pelo intervalo de endereços IP que deve ter acesso à interface de métricas.

Os ficheiros de registo expostos acidentalmente são usados para resolver um dos desafios da Juice Shop. Para evitar a exposição de registos, defina uma regra que impeça completamente o acesso aos ficheiros de registo: request.path.endsWith(".log").

Identity-Aware Proxy e acesso sensível ao contexto

Exemplo de utilização:

  • Acesso remoto seguro a serviços confidenciais
  • Controlo de acesso centralizado
  • Acesso sensível ao contexto

Use a identidade e o contexto para formar um perímetro de autenticação e autorização seguro em torno da sua aplicação. Implemente ferramentas, como relatórios de erros internos, uma base de conhecimentos corporativa ou um email atrás do IAP, para permitir que o Acesso sensível ao contexto apenas autorize indivíduos a partir de qualquer lugar na Internet.

O acesso sensível ao contexto permite-lhe aplicar controlos de acesso detalhados a aplicações Web, máquinas virtuais (VMs), Google Cloud APIs e aplicações do Google Workspace com base na identidade do utilizador e no contexto do pedido sem uma VPN convencional. Com base no modelo de segurança de confiança zero e na implementação BeyondCorp da Google, o acesso sensível ao contexto permite-lhe fornecer acesso aos seus utilizadores, aplicar controlos detalhados e usar uma única plataforma para as aplicações na nuvem e nas instalações, bem como para os recursos da infraestrutura.

Secret Manager

Exemplo de utilização:

  • Chaves criptográficas
  • Chaves da API
  • Outras credenciais do sistema

O Secret Manager é um serviço de armazenamento seguro para os seus dados mais valiosos, como chaves de API, palavras-passe de contas de serviço e recursos criptográficos. Armazenar centralmente estes segredos permite-lhe confiar nos sistemas de autenticação e autorização da Google Cloud, incluindo a IAM, para determinar se um determinado pedido de acesso é válido. Google Cloud

O Secret Manager não foi concebido para operações de grande escala, como a tokenização de cartões de crédito ou o armazenamento de palavras-passe de utilizadores individuais. Essas aplicações devem basear-se na Identity Platform para a gestão de identidades e acessos de clientes (CIAM), no Cloud ID para os membros da sua organização ou no software de tokenização dedicado.

Security Command Center

O Security Command Center inclui dois serviços que ajudam a resolver falhas criptográficas: o Security Health Analytics e o Web Security Scanner.

O Security Health Analytics suporta os seguintes exemplos de utilização:

  • Aplicação da MFA/2FA
  • Proteção da chave da API
  • Aplicação da alteração da chave da API
  • Privacidade das imagens de computação
  • Aplicação de regras de chaves SSH
  • Monitorização do arranque seguro
  • Segurança do acesso à API
  • Monitorização da política de SSL
  • Registo desativado
  • Alertas de ACL de contentores públicos

A análise de saúde da segurança ajuda a evitar a exposição de dados confidenciais através da monitorização da conformidade com a autenticação multifatore o estado das suas chaves de API. Receba alertas sobre configurações não seguras no armazenamento de imagens de contentores, no Cloud Storage, na política SSL, na política de chaves SSH, no registo, no acesso à API e muito mais.

O Web Security Scanner suporta o seguinte exemplo de utilização:

  • Palavras-passe não encriptadas transmitidas através da rede

O Web Security Scanner analisa as suas aplicações Web e comunica as conclusões de erros e vulnerabilidades. Se a sua aplicação transmitir palavras-passe em texto desencriptado, o Web Security Scanner gera uma descoberta CLEAR_TEXT_PASSWORD.

VirusTotal

Exemplo de utilização:

  • Prevenção do phishing

O VirusTotal permite-lhe analisar URLs em busca de conteúdo malicioso antes de os apresentar aos seus utilizadores ou funcionários, quer sejam encontrados em introduções de utilizadores, emails, chats, registos ou outras localizações.

VPC Service Controls

Exemplo de utilização:

  • Firewall para serviços geridos

Envolva os serviços geridos de forma crítica numa firewall para controlar quem pode chamar o serviço e a quem o serviço pode responder. Bloqueie a saída não autorizada e a exfiltração de dados com regras de perímetro de saída em serviços como as funções do Cloud Run. Impedir pedidos de utilizadores e localizações não autorizados para bases de dados e arquivos de dados geridos. Crie perímetros seguros em torno de APIs poderosas ou potencialmente dispendiosas.

Scanner de aplicações Web

Exemplo de utilização:

  • Scanner de risco de segurança de apps Web
  • Análise de disponibilidade do repositório de origem

Para impedir que a sua aplicação Web exponha dados confidenciais, certifique-se de que as palavras-passe não são enviadas em texto não cifrado. Evite a divulgação de código-fonte não processado potencialmente devastador verificando se existem repositórios de código-fonte do Git e do Apache Subversion expostos. Estas análises são concebidas para abranger controlos específicos da OWASP Top 10.

A03: injeção

As falhas de injeção, como injeção SQL, NoSQL, SO e LDAP, ocorrem quando dados não fidedignos são enviados para um intérprete como parte de um comando ou uma consulta. Os dados hostis do atacante podem enganar o intérprete para executar comandos não intencionais ou aceder a dados sem autorização adequada. Recomendamos que os dados do utilizador sejam limpos ou filtrados pela aplicação antes de serem enviados para um intérprete.

As secções seguintes abordam os Google Cloud produtos que podem ajudar a mitigar este risco.

Apigee

Exemplo de utilização:

  • Bloqueio de injeção SQL
  • Bloqueio de injeção NoSQL
  • Bloqueio de injeção de LDAP
  • Bloqueio de injeção de JavaScript

O Apigee fornece várias políticas de validação de entradas para verificar se os valores fornecidos por um cliente correspondem às suas expetativas configuradas antes de permitir o processamento adicional das políticas ou regras. O Apigee, que atua como um gateway para os pedidos de API recebidos, executa uma verificação de limites para garantir que a estrutura de dados se enquadra num intervalo aceitável. Pode configurar um proxy de API para que a rotina de validação de entradas transforme a entrada de modo a remover sequências de carateres arriscadas e, em seguida, substituí-las por valores seguros.

Existem várias abordagens para validar a entrada com a plataforma Apigee:

Cloud Armor

Exemplo de utilização:

  • Filtragem de injeção SQL
  • Filtragem de injeção de PHP

O Cloud Armor pode bloquear ataques de injeção comuns antes de chegarem à sua aplicação. Para a injeção SQL (SQLi), o Cloud Armor tem um conjunto de regras predefinido que se baseia no conjunto de regras principais do OWASP Modsecurity. Pode criar políticas de segurança que bloqueiam ataques SQLi comuns definidos no conjunto de regras principal através da regra evaluatePreconfiguredExpr('sqli-stable'), quer isoladamente ou em conjunto com outras regras personalizadas. Por exemplo, pode limitar o bloqueio de SQLi a aplicações específicas através de um filtro de caminho de URL.

Para a injeção de PHP, existe outro conjunto de regras pré-configurado. Pode usar a regra evaluatePreconfiguredExpr('php-stable') para bloquear ataques de injeção de PHP comuns.

Consoante a sua aplicação, a ativação das expressões pré-configuradas pode resultar em alguns falsos positivos, porque algumas das regras no conjunto de regras são bastante sensíveis. Para mais informações, consulte a secção sobre resolução de problemas de falsos positivos e como ajustar o conjunto de regras a diferentes níveis de sensibilidade.

Para ataques de injeção que não sejam direcionados para SQL ou PHP, pode criar regras personalizadas para bloquear pedidos quando são usadas palavras-chave específicas ou padrões de escape nesses protocolos no caminho do pedido ou na consulta. Certifique-se de que estes padrões não aparecem em pedidos válidos. Também pode limitar estas regras para serem usadas apenas para pontos finais ou caminhos específicos que possam interpretar os dados transmitidos para eles.

Além disso, alguns ataques de injeção podem ser mitigados através das regras pré-configuradas para execução remota de código e injeção remota de ficheiros.

Security Command Center

O Security Command Center inclui dois serviços que ajudam a resolver falhas de injeção: a deteção de ameaças de contentores e o verificador de segurança Web.

A Deteção de ameaças de contentores suporta os seguintes exemplos de utilização:

  • Deteção de scripts maliciosos
  • Deteção de shell invertida
  • Deteção de instalação de software malicioso

O Malicious Script Executed detetor de Deteção de ameaças de contentores analisa todos os scripts de shell executados no sistema e comunica os que parecem maliciosos. Este detetor permite-lhe descobrir ataques de injeção de comandos de shell. Após uma injeção de comando de shell bem-sucedida, um atacante pode gerar um shell inverso, o que aciona o detetor Reverse Shell. Em alternativa, podem instalar software malicioso, o que aciona os detetores Added Binary Executed e Added Library Loaded.

O Web Security Scanner suporta os seguintes exemplos de utilização:

  • Monitorização de cross-site scripting
  • Monitorização de injeção SQL

O Web Security Scanner analisa as suas aplicações Web em busca de vulnerabilidades e fornece detetores que monitorizam ataques de cross-site scripting e injeção SQL.

A04: Design inseguro

A conceção não segura ocorre quando as organizações não implementam os meios para avaliar e resolver ameaças durante o ciclo de vida de desenvolvimento. A modelagem de ameaças, quando feita no início das fases de design e refinamento, e continuada ao longo das fases de desenvolvimento e testes, ajuda as organizações a analisar pressupostos e falhas. Uma cultura de aprendizagem sem culpa a partir de erros é fundamental para uma conceção segura.

Apigee

Exemplos de utilização:

  • Validação de entradas
  • Controlos de acesso
  • Processamento de falhas
  • Políticas de proteção de conteúdo
  • Gestão de palavras-passe

O Apigee permite-lhe validar pedidos e respostas recebidos na sua aplicação através da política OASValidation. Além disso, para proteger o acesso, pode configurar o início de sessão único (SSO), controlo de acesso baseado em funções (CABF), limitar o acesso às APIs (por exemplo, através do Auth0) e restringir os endereços IP que têm acesso ao seu ambiente. Ao usar regras de processamento de falhas, pode personalizar a forma como o proxy de API reage a erros.

Para proteger contra palavras-passe não seguras para utilizadores globais do Apigee, o Apigee oferece opções de expiração, bloqueio e reposição de palavras-passe. Além disso, pode ativar a autenticação de dois fatores (2FA).

API Cloud Data Loss Prevention (parte da proteção de dados confidenciais)

Exemplo de utilização:

  • Identifique e oculte dados confidenciais

Com a API Cloud Data Loss Prevention, pode identificar dados confidenciais e tokenizá-los. A API DLP pode ajudar a limitar a exposição de dados confidenciais, porque, depois de os dados serem tokenizados e armazenados, pode configurar controlos de acesso para restringir quem pode ver os dados. Para mais informações, consulte os artigos Automatizar a classificação de dados carregados para o Cloud Storage e Desidentificação e reidentificação de IIP em conjuntos de dados de grande escala através da proteção de dados sensíveis.

Secret Manager

Exemplo de utilização:

  • Proteja o armazenamento de credenciais

O Secret Manager permite que as aplicações e os pipelines acedam aos valores de segredos com nomes baseados em autorizações concedidas com o IAM. Também oferece acesso programático a segredos para que os processos automatizados possam aceder a valores secretos. Quando está ativado, cada interação com o Secret Manager fornece uma trilha de auditoria. Use estas pistas de auditoria para ajudar com as necessidades de análise forense e conformidade.

Security Command Center

O serviço Web Security Scanner que faz parte do Security Command Center suporta o seguinte exemplo de utilização:

  • Identificar vulnerabilidades de segurança nas suas aplicações.

O Web Security Scanner analisa as suas aplicações Web em busca de vulnerabilidades. Segue links e tenta exercer o maior número possível de entradas do utilizador e controladores de eventos. O respetivo detetor CACHEABLE_PASSWORD_INPUT gera uma descoberta se as palavras-passe introduzidas na aplicação Web puderem ser colocadas em cache numa cache do navegador normal em vez de num armazenamento de palavras-passe seguro.

A05: Configuração incorreta de segurança

A configuração incorreta de segurança refere-se a falhas de aplicações sem patches, contas predefinidas abertas e ficheiros e diretórios desprotegidos que podem normalmente ser evitados com o reforço da aplicação. A configuração incorreta de segurança pode ocorrer de várias formas, como confiar nas configurações predefinidas, fazer configurações parciais que podem ser inseguras, permitir que as mensagens de erro contenham detalhes confidenciais, armazenar dados na nuvem sem controlos de segurança adequados ou configurar incorretamente os cabeçalhos HTTP.

Apigee

Exemplo de utilização:

  • Faça a gestão das configurações de segurança
  • Monitorize as configurações de segurança

Um fluxo partilhado permite que os programadores de APIs combinem políticas e recursos num grupo reutilizável. Ao captar políticas e recursos reutilizáveis num único local, um fluxo partilhado ajuda a garantir a consistência, reduzir o tempo de desenvolvimento e gerir o código. Pode incluir um fluxo partilhado em proxies de API individuais através de uma política FlowCallout ou pode colocar fluxos partilhados em flow hooks para executar automaticamente a lógica de fluxo partilhado para cada proxy de API implementado no mesmo ambiente.

Cloud Asset Inventory

Exemplo de utilização:

  • Serviço de notificações em tempo real

As notificações em tempo real podem alertar para o aprovisionamento inesperado de recursos que podem estar protegidos de forma inadequada ou não autorizados.

Cloud Load Balancing

Exemplo de utilização:

  • Controlo detalhado das cifras SSL e TLS

Impeça a utilização de cifras SSL ou TLS conhecidas como vulneráveis atribuindo um grupo predefinido ou uma lista personalizada de cifras que um equilibrador de carga pode usar.

Cloud Armor

Exemplo de utilização:

  • Filtre pontos finais inseguros
  • Filtre ataques de inclusão de ficheiros locais ou remotos
  • Filtrar ataques de protocolo

Uma vez que a configuração incorreta de segurança pode ocorrer ao nível da aplicação, a OWASP Foundation recomenda que reforce e aplique patches diretamente à sua aplicação e remova todas as funcionalidades desnecessárias.

Embora uma firewall de aplicações Web (WAF), como o Cloud Armor, não possa ajudar a corrigir a configuração incorreta subjacente, pode bloquear o acesso a partes da aplicação total ou parcialmente, ou para todos, exceto endereços IP ou países específicos. A restrição do acesso pode reduzir o risco de exploração dessas configurações incorretas.

Por exemplo, se a sua aplicação expuser uma interface administrativa através de um URL comum, como /admin, pode restringir o acesso a esta interface, mesmo que esteja autenticada. Pode fazê-lo com uma regra de recusa. Por exemplo:

request.path.contains("/admin") && !(inIpRange(origin.ip,
'1.2.3.4/32')

Substitua 1.2.3.4/32 pelo intervalo de endereços IP que deve ter acesso à interface do administrador.

Algumas configurações incorretas podem ser parcialmente atenuadas através da utilização dos conjuntos de regras de inclusão de ficheiros locais (LFI) ou de inclusão de ficheiros remotos (RFI) predefinidos. Por exemplo, a exploração do desafio de imagens entre sites da Juice Shop não tem êxito quando o conjunto de regras LFI é aplicado. Use a regra evaluatePreconfiguredExpr('lfi-stable') || evaluatePreconfiguredExpr('rfi-stable') para bloquear pedidos que usem os conjuntos de regras LFI e RFI e ajuste as regras conforme necessário. Pode verificar se a solução do desafio já não é bem-sucedida.

Alguns ataques HTTP também podem ser mitigados através de conjuntos de regras pré-configurados:

  • Para evitar a manipulação de verbos HTTP, use o conjunto de regras de aplicação de métodos. Use a regra evaluatePreconfiguredExpr('methodenforcement-stable') para não permitir métodos de pedido HTTP que não sejam os métodos GET, HEAD, POST e OPTIONS
  • Para bloquear ataques comuns contra a análise HTTP e os proxies, como roubo de pedidos HTTP, divisão de respostas HTTP, e injeção de cabeçalhos HTTP, use o conjunto de regras de ataque de protocolo através da regra evaluatePreconfiguredExpr('protocolattack-stable').

Security Command Center

O Security Command Center inclui dois serviços que ajudam a resolver as configurações incorretas de segurança: o Security Health Analytics e o Web Security Scanner.

A análise de estado de segurança suporta o seguinte exemplo de utilização:

  • Monitorização e alertas de controlos de segurança

O Security Health Analytics monitoriza muitos sinais através de uma única interface para garantir que a sua aplicação está a manter as práticas recomendadas de segurança.

O Web Security Scanner suporta os seguintes exemplos de utilização:

  • Scanner de apps Web personalizado para as 10 principais OWASP
  • Erros de configuração do servidor HTTP
  • Conteúdo HTTP/HTTPS misto
  • Entidade externa XML (XXE)

O Web Security Scanner monitoriza erros de segurança comuns, como discrepâncias do tipo de conteúdo, cabeçalhos de segurança inválidos e publicação de conteúdo misto. O Web Security Scanner também monitoriza vulnerabilidades, como vulnerabilidades XXE. Estas análises são concebidas para abranger os 10 principais controlos da OWASP. Os seguintes detetores procuram erros de configuração de segurança:

  • INVALID_CONTENT_TYPE
  • INVALID_HEADER
  • MISMATCHING_SECURITY_HEADER_VALUES
  • MISSPELLED_SECURITY_HEADER_NAME
  • MIXED_CONTENT
  • XXE_REFLECTED_FILE_LEAKAGE

Para mais informações sobre estes e outros detetores, consulte a Vista geral do verificador de segurança Web.

A06: Componentes vulneráveis e desatualizados

Os componentes com vulnerabilidades conhecidas são uma categoria para vetores de ataque genéricos, e estas vulnerabilidades são melhor mitigadas através da monitorização e da atualização rápida de todos os componentes da sua aplicação.

Autorização binária

Exemplo de utilização:

  • Restrinja os clusters do GKE a contentores fidedignos

A autorização binária é um controlo de segurança no momento da implementação que ajuda a garantir que apenas as imagens de contentores fidedignas são implementadas no Google Kubernetes Engine (GKE). Com a autorização binária, pode exigir que as imagens sejam assinadas por autoridades fidedignas durante o processo de desenvolvimento e, em seguida, aplicar a validação de assinatura durante a implementação. Ao aplicar a validação, pode garantir que o seu processo de compilação e lançamento usa apenas imagens validadas.

Cloud Load Balancing

Exemplo de utilização:

  • Controlo detalhado das cifras SSL e TLS

Impeça a utilização de cifras SSL ou TLS vulneráveis conhecidas atribuindo um grupo predefinido ou uma lista personalizada de cifras que o Cloud Load Balancing pode usar.

Cloud Armor

Exemplo de utilização:

  • Bloqueie o acesso a pontos finais de aplicações não usados
  • Bloqueie vetores de ataque comuns

Não deve usar uma firewall de aplicação Web (WAF), como o Cloud Armor, como uma única estratégia de mitigação para bloquear ataques contra esta categoria, porque os ataques são frequentemente específicos da biblioteca e não podem ser bloqueados por conjuntos de regras pré-configurados nem corrigidos no lado do servidor. A monitorização e a atualização regulares de todos os componentes da sua aplicação são a única opção para mitigar este tipo de vulnerabilidades.

No entanto, o Cloud Armor pode ajudar a mitigar alguns ataques comuns contra aplicações vulneráveis através das respetivas regras pré-configuradas para execução de código remoto, inclusão de ficheiros locais ou inclusão de ficheiros remotos.

Se tiver conhecimento de componentes vulneráveis na sua aplicação, mas não conseguir aplicar patches à aplicação imediatamente, pode bloquear o acesso a estas partes da aplicação para reduzir temporariamente o risco de uma exploração destes componentes. Crie uma regra personalizada que corresponda ao caminho do URL ou às consultas que acedem a estes componentes vulneráveis e negue o acesso. Se precisar de acesso a estes componentes a partir de utilizadores ou localizações específicos, pode continuar a permitir que determinados endereços IP de origem fidedignos acedam a estes componentes. Uma regra que usa o caminho do URL tem um aspeto semelhante ao seguinte:

`request.path.contains("/component") && !(inIpRange(origin.ip,
'1.2.3.4/32')

Substitua o seguinte:

  • /component: o caminho do componente com vulnerabilidades conhecidas
  • 1.2.3.4/32: o intervalo de endereços IP que deve manter o acesso à interface.

Se existirem partes da sua aplicação, por exemplo, determinados diretórios ou tipos de ficheiros que nunca precisam de ser acedidos pelos utilizadores finais, também pode bloquear ou restringir o acesso a estes recursos com uma regra personalizada, mitigando proativamente o risco se estes componentes se tornarem vulneráveis no futuro.

Google Cloud Boletins de segurança

Exemplo de utilização:

  • Monitorização de boletins de segurança
  • CVEs para produtos Google Cloud

Google Cloud Boletins de segurança são uma fonte fidedigna de boletins de segurança que afetam Google Cloud. As publicações incluem informações de contexto, links para CVEs e recomendações para ações adicionais.

Security Command Center

O Security Command Center inclui três serviços que ajudam a resolver componentes vulneráveis e desatualizados: Deteção de ameaças de contentores, Deteção de ameaças de eventos e Analisador de segurança Web.

A Deteção de ameaças de contentores suporta os seguintes exemplos de utilização:

  • Deteção de scripts maliciosos
  • Deteção de shell invertida
  • Deteção de instalação de software malicioso

Se um atacante explorar um componente vulnerável e executar um script malicioso, o detetor de Malicious Script Executed Container Threat Detection gera uma descoberta. Se um atacante gerar um shell inverso, o detetor Reverse Shell gera uma descoberta. Se um atacante instalar software malicioso, os detetores Added Binary Executed e Added Library Loaded geram resultados.

A Deteção de ameaças de eventos suporta os seguintes exemplos de utilização:

  • Deteção de mineração de criptomoedas
  • Deteção de programas maliciosos
  • Exfiltração de dados
  • DoS de saída

A Deteção de ameaças de eventos monitoriza a sua stream do Cloud Logging e aplica lógica de deteção e informações sobre ameaças a um nível detalhado. Quando a Deteção de ameaças de eventos deteta uma ameaça, escreve uma descoberta no Security Command Center e num projeto do Cloud Logging. As seguintes regras de deteção são úteis para detetar os efeitos da utilização de componentes com vulnerabilidades conhecidas:

  • Mineração de criptomoedas. Detetar mineração de criptomoedas com base em pedidos DNS ou ligação a endereços de mineração conhecidos.
  • Software malicioso. Detetar pedidos de DNS baseados em software malicioso ou ligação a endereços conhecidos como maus.
  • Exfiltração para uma tabela externa. Detetar recursos guardados fora da organização, incluindo operações de cópia ou transferência.
  • DoS de saída. Detetar vulnerabilidades exploradas que tentam ataques de negação de serviço.

O Web Security Scanner suporta os seguintes exemplos de utilização:

  • Bibliotecas desatualizadas
  • Painéis de controlo de vulnerabilidades e resultados

O Web Security Scanner monitoriza bibliotecas obsoletas incluídas na sua aplicação Web. Pode monitorizar estas conclusões no painel de controlo do Security Command Center.

A07: Falhas de identificação e autenticação

As falhas de identificação e autenticação são riscos comuns porque a autenticação de aplicações e a gestão de sessões são frequentemente implementadas incorretamente. Os atacantes podem explorar falhas de implementação, como palavras-passe, chaves e tokens de sessão comprometidos, para assumir temporária ou permanentemente as identidades de outros utilizadores.

Transparência de acesso

Exemplo de utilização:

  • Monitorização do fornecedor de serviços
  • Justificações de acesso

Normalmente, se quisesse apoio técnico personalizado de fornecedores externos, tinha de conceder e partilhar credenciais temporárias, o que cria o potencial de credenciais órfãs ou roubadas. A Aprovação de acesso é um serviço integrado que lhe permite aprovar ou rejeitar pedidos de acesso por parte de funcionários da Google que trabalham para prestar apoio técnico à sua conta. Cada pedido de acesso inclui uma justificação do acesso para que possa ver o motivo de cada acesso, incluindo referências a pedidos de apoio técnico.

Apigee

Exemplo de utilização:

  • Validação da chave
  • Validação de tokens
  • Políticas de OAuth

O Apigee fornece políticas de verificação de chaves de API, OAuth e símbolo da Web JSON (JWT), que ajudam a proteger contra este risco.

A validação da chave da API é a forma mais simples de segurança baseada em apps que pode ser configurada para uma API. Uma aplicação cliente apresenta uma chave da API com o respetivo pedido. O Apigee Edge, através de uma política anexada a um proxy de API, verifica se a chave da API está num estado aprovado para o recurso que está a ser pedido.

A framework de autorização OAuth 2.0 permite que uma aplicação de terceiros obtenha acesso limitado a um serviço HTTP, quer em nome de um proprietário de recursos através da orquestração de uma interação de aprovação entre o proprietário de recursos e o serviço HTTP, quer em seu próprio nome, permitindo que a aplicação de terceiros obtenha acesso.

Os símbolos da Web JSON, ou JWT, são usados frequentemente para partilhar reivindicações ou afirmações entre aplicações ligadas. O Apigee oferece suporte para JWT através de três políticas.

Cloud Armor

Exemplo de utilização:

  • Limite o acesso ao ponto final de autenticação
  • Restrinja a utilização não autorizada de tokens

Os ataques contra vulnerabilidades classificadas sob o risco de autenticação quebrada são melhor mitigados ao nível da aplicação ou por outros controlos. No entanto, o Cloud Armor pode ajudar a limitar a superfície de ataque ou bloquear vetores de ataque conhecidos.

Por exemplo, se a sua aplicação tiver uma base de utilizadores limitada e esses utilizadores forem originários de um conjunto conhecido de endereços IP ou países, pode criar uma política de segurança que limite o acesso à sua aplicação a utilizadores desses blocos de endereços IP ou países. Esta política pode ajudar a mitigar a análise automática de pontos finais fora destas áreas.

Se outros mecanismos de segurança detetarem que as palavras-passe, as chaves ou os tokens de sessão foram comprometidos, pode bloquear o acesso para pedidos que contenham esses parâmetros numa string de consulta através de uma regra personalizada. Pode atualizar as regras que definiu anteriormente através do método securityPolicy.patchRule. Pode identificar potenciais roubos de tokens através de mecanismos de deteção de anomalias nos registos de balanceamento de carga HTTP. Também pode detetar potenciais adversários analisando esses registos à procura de palavras-passe comuns.

Pode bloquear ataques de fixação de sessão comuns através do conjunto de regras do ModSecurity pré-configurado para fixação de sessão. Pode usar o conjunto de regras adicionando a regra evaluatePreconfiguredExpr('sessionfixation-stable') predefinida à sua política de segurança.

Se a sua aplicação incluir alterações de palavras-passe na string de consulta, também pode bloquear a utilização de palavras-passe comuns através de uma regra personalizada que corresponda ao atributo request.query. No entanto, é muito melhor implementar essas verificações no lado da aplicação, se possível.

Identity-Aware Proxy (IAP)

Exemplo de utilização:

  • Controlo de acesso centralizado
  • Funciona com a nuvem e no local
  • Proteja as ligações HTTP e TCP
  • Acesso sensível ao contexto

O IAP integra-se com o balanceamento de carga HTTP(S) para que possa usar a identidade e o contexto para formar uma firewall de autenticação e autorização segura em torno da sua aplicação. Evite a autenticação danificada na sua aplicação pública aprovisionando utilizadores externos na Identity Platform (mais informações na secção seguinte).

Também pode impedir a autenticação danificada nas interfaces administrativas protegendo-as com o Identity-Aware Proxy e autenticando os utilizadores aprovisionados com a gestão de identidade e de acesso ou o Cloud Identity. Qualquer tentativa de acesso à ferramenta resulta numa tentativa de autenticação registada, seguida de uma verificação de autorização para garantir que o utilizador autenticado tem autorização para aceder ao recurso pedido.

Identity Platform

Exemplo de utilização:

  • Autenticação como serviço
  • Autenticação multifator
  • SLA empresarial
  • Amplo suporte de protocolos
  • Inteligência de proteção da Conta Google

A Identity Platform é a plataforma CIAM para Google Cloud clientes. A Identity Platform ajuda a fornecer autenticação segura como um serviço com suporte multiprotocolo através da utilização de SDKs e APIs. Oferece autenticação multifator, integração com serviços de autenticação de terceiros e acompanhamento de atividade auditável.

reCAPTCHA

Exemplo de utilização:

  • Tentativas de início de sessão automatizadas
  • Roubo de conteúdo
  • Reutilização de credenciais roubadas
  • Transações fraudulentas
  • Tomadas de controlo de contas
  • Contas falsas
  • Lavagem de dinheiro

O reCAPTCHA oferece uma filtragem altamente eficaz contra bots e outras formas de automatização e tráfego em massa, classificando o nível de risco das tentativas de acesso. Pode ajustar o modelo específico do seu site com feedback automatizado. O reCAPTCHA adapta as pontuações futuras para se ajustarem ao seu site.

Security Command Center

O Security Command Center inclui três serviços que ajudam a resolver falhas de identificação e autenticação: Event Threat Detection, Security Health Analytics e Web Security Scanner.

A Deteção de ameaças de eventos suporta os seguintes exemplos de utilização:

  • Deteção de força bruta
  • Deteção de abuso de IAM

A Deteção de ameaças de eventos monitoriza a sua stream do Cloud Logging e aplica lógica de deteção e informações sobre ameaças proprietárias a um nível detalhado. Quando a Deteção de ameaças de eventos deteta uma ameaça, escreve uma descoberta no Security Command Center e no Cloud Logging no projeto à sua escolha. Os seguintes tipos de eventos são úteis para identificar a autenticação danificada:

  • Força bruta de SSH. Detetar ataques de força bruta bem-sucedidos de SSH num anfitrião.
  • Concessão anómala. Detetar privilégios concedidos a utilizadores da gestão de identidade e de acesso (IAM) Google Cloud fora da sua organização.

O Security Health Analytics suporta os seguintes exemplos de utilização:

  • Aplicação da MFA/2FA
  • Proteção da chave da API
  • Aplicação da alteração da chave da API

O Security Command Center ajuda a evitar a autenticação danificada monitorizando a conformidade da autenticação multifator e o estado das suas chaves de API. Pode identificar pedidos suspeitos e bloqueá-los ou denunciá-los para processamento especial.

O Web Security Scanner suporta o seguinte exemplo de utilização:

  • Fugas do identificador de sessão

O Web Security Scanner analisa as suas aplicações Web em busca de vulnerabilidades, como fugas de ID de sessão, que permitem que outras partes roubem a identidade ou identifiquem um utilizador de forma única.

Chaves de segurança Titan

Exemplo de utilização:

  • 2FA resistente a phishing
  • Autenticação em dispositivos móveis e PCs

As chaves de segurança Titan usam criptografia de chave pública para validar a identidade de um utilizador e o URL da página de início de sessão para ajudar a garantir que os atacantes não conseguem aceder à sua conta, mesmo que seja enganado para fornecer o seu nome de utilizador e palavra-passe.

A08: Falhas de integridade de software e dados

As falhas de integridade de software e dados podem ocorrer quando as verificações de integridade não são realizadas durante as atualizações de software, o processamento de dados confidenciais ou qualquer processo no pipeline de CI/CD.

Artifact Registry

Exemplo de utilização:

  • Centralize os artefactos numa localização única e fidedigna
  • Use a gestão de versões, a análise de vulnerabilidades e os fluxos de trabalho de aprovação

O Artifact Registry é um único local para a sua organização gerir imagens de contentores e pacotes de idiomas (como Maven e npm). Pode integrar-se com as suas ferramentas de desenvolvimento existentes e oferece análise de vulnerabilidades para os seus contentores através da análise de artefactos.

Autorização binária

Exemplo de utilização:

  • Certifique-se de que apenas são implementados contentores fidedignos

A autorização binária valida a integridade dos contentores para que apenas sejam implementadas imagens de contentores fidedignas. Pode criar políticas para permitir ou recusar a implementação com base na presença ou ausência de atestações. A autorização binária aplica políticas ao nível do cluster, pelo que pode configurar políticas diferentes para diferentes ambientes. Esta distinção permite requisitos de atestação progressivos à medida que os ambientes se aproximam da produção.

Cloud Asset Inventory

Exemplo de utilização:

  • Serviço de pesquisa

  • Analisador de acesso

Um dos vetores mais comuns de exposição de dados é a infraestrutura de TI órfã ou não autorizada. Pode identificar servidores que ninguém está a manter e contentores com regras de partilha demasiado abrangentes analisando os dados de séries cronológicas de recursos na nuvem.

Configure notificações em tempo real para receber alertas sobre o aprovisionamento inesperado de recursos que podem estar incorretamente protegidos ou não autorizados.

Cloud Build

Exemplo de utilização:

  • Reveja as alterações ao código

  • Execute testes

  • Padronize as implementações de compilações

O Cloud Build permite-lhe criar uma configuração de compilação para fornecer instruções sobre a implementação da compilação, incluindo a execução de testes de integração e análise estática.

Cloud Armor

Exemplo de utilização:

  • Bloqueie a execução remota de código

Uma vez que a maioria dos ataques contra a integridade do software e dos dados são específicos da aplicação, existem apenas algumas formas de ajudar a mitigar estes ataques, por exemplo, através da utilização de uma firewall de aplicação Web (WAF), como o Cloud Armor. A OWASP recomenda que não aceite objetos serializados de origens não fidedignas. Se possível, pode restringir os pontos finais que aceitam esses objetos a um conjunto de endereços IP fidedignos com uma regra de recusa semelhante à seguinte:

request.path.contains("/endpoint") && !(inIpRange(origin.ip,
'1.2.3.4/32')

Substitua o seguinte:

  • /endpoint: o caminho do ponto final que aceita objetos serializados
  • 1.2.3.4/32: o intervalo de endereços IP que deve manter o acesso à interface.

Para mitigar os ataques típicos contra a integridade do software e dos dados que usam a execução de código remoto (RCE), use o conjunto de regras predefinido contra ataques de RCE. Pode usar a regra evaluatePreconfiguredExpr('rce-stable') para bloquear ataques RCE comuns contra shells UNIX e Windows.

Os ataques RCE descritos nos desafios da Juice Shop para desserializações não seguras executam funções e expressões regulares no Node.js no servidor. Estes tipos de ataques não são bloqueados pelo conjunto de regras RCE predefinido e pela regra OWASP Modsecurity correspondente, e têm de ser mitigados através da utilização de patches no lado do servidor ou de regras personalizadas.

VirusTotal

Exemplo de utilização:

  • Análise de dados não fidedignos

A API VirusTotal permite-lhe carregar e verificar ficheiros quanto à presença de software malicioso. Pode analisar imagens, documentos, ficheiros binários e outros dados não fidedignos antes de serem processados para eliminar determinadas categorias de entrada maliciosa.

Security Command Center

O serviço Web Security Scanner no Security Command Center suporta o seguinte exemplo de utilização:

  • Desserialização não segura

O Web Security Scanner analisa as suas aplicações Web em busca de vulnerabilidades. Por exemplo, se estiver a usar uma versão do Apache Struts que torna a sua aplicação vulnerável a ataques de injeção de comandos remotos, o Web Security Scanner gera uma descoberta STRUTS_INSECURE_DESERIALIZATION.

A09: Falhas de registo e monitorização de segurança

Se não registar, monitorizar nem gerir adequadamente os incidentes nos seus sistemas, os atacantes podem realizar ataques mais profundos e prolongados aos dados e ao software.

Transparência de acesso

Exemplo de utilização:

  • Monitorização e auditoria do acesso de fornecedores de serviços
  • Justificações de acesso
  • Identificação de recursos e métodos

A incapacidade de auditar o acesso do fornecedor de nuvem pode ser um obstáculo à migração de local para a nuvem. A Transparência de acesso permite a validação do acesso do fornecedor de nuvem, aproximando os seus controlos de auditoria das condições no local. Pode registar o motivo de cada acesso, incluindo referências a pedidos de apoio técnico relevantes. Nomes de identificação de recursos e métodos que indicam a que recursos se acedeu e que métodos foram executados por que administrador. A aprovação de acesso permite-lhe aprovar ou ignorar pedidos de acesso por parte de funcionários da Google que estão a trabalhar para prestar apoio técnico ao seu serviço.

Apigee

Exemplo de utilização:

  • Exporte registos do Apigee para o SIEM
  • Use a IU de monitorização do Apigee
  • Siga as práticas recomendadas de monitorização

O Apigee tem várias formas de realizar o registo, a monitorização, o processamento de erros e o registo de auditoria:

  • Registo
    • As mensagens de registo podem ser enviadas para o Splunk ou outros pontos finais syslog através da política MessageLogging.
    • Os dados de estatísticas da API podem ser extraídos através da API Google Data e importados ou exportados para outros sistemas.
    • No Edge para nuvem privada, pode usar a política MessageLogging para escrever em ficheiros de registo locais. Os ficheiros de registo de cada um dos componentes em execução também estão disponíveis.
    • A política de JavaScript pode ser usada para enviar mensagens de registo para um ponto final de registo REST de forma síncrona ou assíncrona.
  • Monitorização
    • Use a interface do utilizador ou a API de monitorização de APIs para monitorizar regularmente as APIs e os backends, e acionar alertas.
    • Use a monitorização da saúde para monitorizar regularmente os back-ends do servidor de destino.
    • O Apigee fornece recomendações para monitorizar o Edge para nuvem privada.
    • A Apigee também oferece práticas recomendadas que a sua equipa pode usar para monitorizar o seu programa de APIs.
  • Processamento de erros
    • A Apigee oferece um mecanismo de processamento de falhas potente e versátil para proxies de API. Tal como um programa Java detetaria exceções, os proxies de API podem detetar falhas e determinar como devolver respostas adequadas aos clientes.
    • O processamento de falhas personalizado do Apigee permite-lhe adicionar funcionalidades, como o registo de mensagens, sempre que ocorre um erro.
  • Registos de auditoria
    • A plataforma Apigee mantém um registo de auditoria que acompanha as alterações aos proxies de API, aos produtos e ao histórico da organização.
    • Este registo está disponível através da IU ou através da API Management.

Google Security Operations

Exemplo de utilização:

  • Deteção de ameaças
  • Aviso antecipado

As equipas de segurança podem enviar a respetiva telemetria de segurança para o Google Security Operations para lhe permitir aplicar regras de deteção avançadas a um conjunto unificado de dados.

Proteção de dados confidenciais

Exemplo de utilização:

  • Masking automático de dados confidenciais

Identifique informações sensíveis em termos de conformidade nas suas streams de registos e mascare ou transforme-as adequadamente antes de as arquivar nos registos. Por exemplo, uma mensagem de erro ou um despejo de memória pode conter informações confidenciais, como números de cartões de crédito ou informações de identificação pessoal que precisam de ser ocultadas.

Cloud Key Management Service

Exemplo de utilização:

  • Registo de eventos de pedido de chave criptográfica
  • Justificações de acesso

As justificações de acesso às chaves dão-lhe visibilidade do histórico de todos os pedidos de uma chave de encriptação, registando a justificação indicada e um registo de aprovação ou recusa desse pedido.

Cloud Logging

Exemplo de utilização:

  • Agregação de registos
  • Armazenamento de registos
  • Pesquisa de registos
  • Análise de registos

O Cloud Logging permite-lhe armazenar, pesquisar, analisar, monitorizar e alertar sobre dados de registos e eventos da Google Cloud e da Amazon Web Services. Inclui o acesso ao serviço BindPlane, que pode usar para recolher dados de registo de mais de 150 componentes de aplicações comuns, sistemas nas instalações e sistemas de nuvem híbrida.

Cloud Monitoring

Exemplo de utilização:

  • Monitorização de registos
  • Alertas de eventos

O Cloud Monitoring oferece visibilidade do desempenho, do tempo de atividade e do estado geral das aplicações baseadas na nuvem. Oferece um painel de controlo de monitorização, monitores de eventos e alertas através de vários canais.

Cloud Source Repositories

Exemplo de utilização:

  • Atribuição de alterações de código
  • Aceda ao registo de auditoria

Obtenha estatísticas sobre as ações realizadas no seu repositório, incluindo o momento e o local, com os registos de auditoria do Cloud gerados pelos Cloud Source Repositories.

Error Reporting

Exemplo de utilização:

  • Capture erros internos da aplicação nos Registos na nuvem
  • Recolha relatórios de falhas fora da instância de computação com falhas

Os erros internos da aplicação podem ser um indicador de um problema de segurança, de uma funcionalidade danificada ou de tentativas de contornar a segurança. Os relatórios de erros contam, analisam e agregam as falhas nos seus serviços na nuvem em execução. Uma interface de gestão de erros centralizada apresenta os resultados com capacidades de ordenação e filtragem. Uma vista dedicada mostra os detalhes do erro, por exemplo, o gráfico de tempo, as ocorrências, o número de utilizadores afetados, as datas da primeira e última deteção, e um rastreio de pilha de exceções limpo. Ative a opção para receber alertas por email e para dispositivos móveis sobre novos erros.

Cloud Armor

Exemplo de utilização:

  • Registo da política de segurança
  • Painéis de controlo de monitorização
  • Alertas sobre anomalias de tráfego

Os registos de pedidos do Cloud Armor fazem parte do Cloud Logging para equilibradores de carga de aplicações externos Para ter acesso às informações de registo, como a regra de política de segurança que correspondeu ao tráfego, ative o registo em todos os serviços de back-end que tenham políticas de segurança anexadas. Use regras no modo de pré-visualização para as testar e registar os resultados sem aplicar os efeitos.

O Cloud Armor também oferece painéis de controlo de monitorização para políticas de segurança que lhe permitem obter uma vista geral da quantidade de tráfego que passou ou foi recusado por qualquer uma das suas políticas de segurança. O Cloud Armor publica descobertas sobre anomalias de tráfego, como picos no tráfego permitido ou aumento do tráfego recusado, no Security Command Center.

O Cloud Armor escreve automaticamente registos de auditoria de atividade do administrador, que registam operações que modificam a configuração ou os metadados de um recurso. Este serviço também pode ser configurado para escrever registos de auditoria de acesso aos dados, que contêm chamadas API que leem a configuração ou os metadados dos recursos, bem como chamadas API orientadas pelo utilizador que criam, modificam ou leem dados de recursos fornecidos pelo utilizador.

Identity Platform

Exemplo de utilização:

  • Registos de auditoria de atividade do administrador
  • Registos de auditoria de acesso a dados
  • Registos de auditoria de eventos do sistema
  • Registos de auditoria de políticas recusadas
  • Registos de atividade de autenticação

A Identity Platform é a plataforma CIAM que regista a atividade de autenticação por predefinição. Google Cloud

Ative vários registos de auditoria poderosos, incluindo a atividade do administrador, o acesso aos dados, os eventos do sistema e as tentativas de autenticação recusadas.

Security Command Center

Exemplos de utilização:

  • Monitorização de alertas
  • Gestão de ameaças
  • Relatórios de análise de vulnerabilidades
  • Monitorização da conformidade
  • Monitorização de recursos
  • Resultados da análise de segurança

Com o painel de controlo de conformidade, pode monitorizar continuamente a conformidade com os controlos da PCI-DSS, da CIS Google Cloud Computing Foundations Benchmark e muito mais. A página Recursos apresenta uma visualização detalhada de todos os Google Cloud recursos, denominados recursos, na sua organização. A página permite-lhe ver recursos para toda a sua organização ou pode filtrar recursos num projeto específico, por tipo de recurso ou por tipo de alteração. Por último, pode rever um inventário detalhado das conclusões para todos os recursos da sua organização, de modo a poder ver potenciais riscos de segurança.

Além disso, o serviço Event Threat Detection do Security Command Center suporta os seguintes exemplos de utilização:

  • Força bruta
  • Mineração de criptomoedas
  • Abuso de IAM
  • Software malicioso
  • Phishing

A Deteção de ameaças de eventos monitoriza a sua stream do Cloud Logging e aplica lógica de deteção e informações sobre ameaças proprietárias a um nível detalhado. A Deteção de ameaças de eventos identifica entradas notáveis nos seus registos e eleva-as para revisão. Quando a Deteção de ameaças de eventos deteta uma ameaça, escreve uma descoberta no Security Command Center e num projeto do Cloud Logging.

A10: Server-Side Request Forgery (SSRF)

Um ataque SSRF ocorre quando um atacante força um servidor vulnerável a acionar pedidos maliciosos indesejados a servidores de terceiros ou recursos internos. As falhas de SSRF podem ocorrer quando uma aplicação Web obtém um recurso remoto sem validar o URL fornecido pelo utilizador.

Apigee

Exemplo de utilização:

  • Bloqueie ataques SSRF através de LFI ou RFI

O Apigee tem analisadores XML e JSON incorporados que usam XPath ou JSONPath para extrair dados. Tem uma política XMLThreatProtection para se proteger contra payloads XML maliciosos e uma política JSONThreatProtection para ajudar a proteger contra payloads JSON maliciosos.

A política ExtractVariables do Apigee permite-lhe extrair o conteúdo de um pedido ou de uma resposta e atribuir esse conteúdo a uma variável. Pode extrair qualquer parte da mensagem, incluindo cabeçalhos, caminhos URI, payloads JSON e XML, parâmetros de formulário e parâmetros de consulta. A política funciona aplicando um padrão de texto ao conteúdo da mensagem e, quando encontra uma correspondência, define uma variável com o conteúdo da mensagem especificado.

Cloud Armor

Exemplo de utilização:

  • Filtre ataques SSRF através de LFI ou RFI

Uma vez que os ataques SSRF podem ser complexos e assumir diferentes formas, as possibilidades de mitigação por parte das firewalls de aplicações Web são limitadas. Os ataques são melhor mitigados através da aplicação de patches a analisadores XML ou JSON, da proibição de entidades externas e da limitação das transferências de dados XML ou JSON em servidores Web públicos ao mínimo. No entanto, consoante a aplicação e o tipo de ataque, o Cloud Armor pode continuar a ajudar a defender-se contra a exfiltração de dados e outros impactos.

Embora não existam regras no conjunto de regras principais do OWASP ModeSecurity que defendam especificamente contra ataques SSRF, as regras de inclusão de ficheiros locais (LFI) e inclusão de ficheiros remotos (RFI) podem ajudar contra alguns destes ataques. Para impedir que um atacante obtenha ficheiros locais no servidor, use a regra evaluatePreconfiguredExpr('lfi-stable')numa política de segurança do Cloud Armor.

O desafio SSRF Juice Shop usa os conjuntos de regras de inclusão de ficheiros remotos (RFI) ou inclusão de ficheiros locais (LFI) pré-configurados para ajudar a mitigar alguns destes ataques, porque bloqueiam a inclusão de URLs ou o percurso de caminhos. Por exemplo, a seguinte regra ativa ambos os conjuntos de regras:

evaluatePreconfiguredExpr('lfi-stable') ||
evaluatePreconfiguredExpr('rfi-stable')

Quando tal regra é implementada, a solução para o desafio SSRF também deixa de funcionar.

VPC Service Controls

Exemplo de utilização:

  • Perímetros de rede para segmentar servidores

Para reduzir o impacto dos ataques SSRF, pode usar os VPC Service Controls para criar perímetros que segmentam servidores de outros recursos na sua organização. Estes perímetros oferecem proteção contra a exfiltração de dados. Quando executados no modo aplicado, os pedidos de API a serviços restritos não atravessam o limite do perímetro, a menos que as condições das regras de entrada e saída necessárias do perímetro sejam cumpridas.

Firewall da nuvem virtual privada (VPC)

Exemplo de utilização:

  • Aplique políticas de firewall "negar por predefinição" ou regras de controlo de acesso à rede para bloquear todo o tráfego, exceto o tráfego essencial da intranet.

As firewalls da VPC aplicam-se ao tráfego de entrada e saída dos seus projetos e rede da VPC. Pode criar regras de firewall que bloqueiam todo o tráfego, exceto o tráfego que quer permitir. Para mais informações, consulte a vista geral das regras da firewall da VPC.

Security Command Center

O serviço Web Security Scanner no Security Command Center suporta o seguinte exemplo de utilização:

  • Monitorização de aplicações Web

O Web Security Scanner analisa as suas aplicações Web em busca de vulnerabilidades. Por exemplo, se a sua aplicação for vulnerável a falsificação de pedidos do lado do servidor, o Web Security Scanner gera uma descoberta SERVER_SIDE_REQUEST_FORGERY.

O que se segue?