Google Cloud Storage
Este documento fornece orientações sobre como integrar o Cloud Storage ao módulo SOAR do Google Security Operations.
Essa integração usa um ou mais componentes de código aberto. Faça o download de uma cópia do código-fonte dessa integração em um bucket do Cloud Storage.
Casos de uso
Na plataforma SOAR do Google SecOps, a integração do Google Cloud Storage resolve os seguintes casos de uso:
Armazenamento de evidências de incidentes: os playbooks podem coletar e armazenar automaticamente evidências relacionadas a incidentes, como registros e amostras de malware, em buckets do Cloud Storage para fornecer um repositório antifurto para preservação de evidências.
Compartilhamento de inteligência contra ameaças:sua equipe de segurança pode usar o Cloud Storage para compartilhar com segurança feeds de inteligência contra ameaças, como listas de endereços IP e domínios maliciosos, com outras equipes ou organizações. O compartilhamento de feeds permite a defesa colaborativa contra ameaças e tempos de resposta mais rápidos.
Integração do sandbox de análise de malware: os playbooks podem enviar automaticamente arquivos suspeitos de um incidente para um sandbox de análise de malware baseado na nuvem. Você pode armazenar os resultados da análise no Cloud Storage para revisão e outras ações, oferecendo uma análise de malware eficiente e escalonável.
Backup da configuração de segurança: use os recursos de SOAR do Google SecOps para automatizar backups regulares de configurações de segurança críticas, como regras de firewall e assinaturas do sistema de detecção de intrusões, no Cloud Storage. A automação de backups garante a continuidade dos negócios e uma recuperação mais rápida em caso de mudanças acidentais ou mal-intencionadas.
Armazenamento de artefatos de campanhas de phishing: use os recursos de SOAR do Google SecOps para armazenar e-mails de phishing, anexos e outros artefatos no Cloud Storage durante a investigação de uma campanha de phishing. O armazenamento de artefatos permite a análise e a preservação centralizadas de evidências para possíveis ações judiciais.
Antes de começar
Antes de configurar a integração do Cloud Storage no Google SecOps, conclua as etapas de pré-requisito a seguir:
Criar uma conta de serviço
Para criar uma conta de serviço, conclua estas etapas:
No console do Google Cloud , acesse Credenciais. Acessar "Credenciais"
No menu Criar credenciais, selecione Conta de serviço.
Insira um nome no campo Nome da conta de serviço e clique em Criar e continuar. y
Pule as telas opcionais de atribuição de função e acesso principal clicando em Continuar > Concluído.
Conceder papéis à conta de serviço
Para permitir que a integração acesse e gerencie seus buckets e objetos de armazenamento, conceda os papéis necessários à sua conta de serviço:
No console do Google Cloud , acesse IAM e administrador > IAM.
Localize sua conta de serviço e clique em editarEditar principal.
Clique em Adicionar outro papel e selecione o seguinte:
Administrador do Storage: concede controle total sobre buckets e objetos.
Consumidor do Service Usage: obrigatório apenas se você usar um
Quota Project IDpara fins de faturamento.
Clique em Salvar.
Escolher e configurar um método de autenticação
A Identidade da carga de trabalho é o método de autenticação recomendado porque usa tokens de curta duração em vez de secrets estáticos.
Chave JSON: depende de um arquivo de chave secreta estática.
Identidade da carga de trabalho (recomendado): usa tokens de acesso temporários.
Configurar uma chave JSON
Use o procedimento a seguir para gerar um arquivo de chave de conta de serviço no formato JSON:
Selecione sua conta de serviço no console Google Cloud e acesse Chaves.
Clique em Adicionar chave > Criar nova chave.
Selecione JSON e clique em Criar. O arquivo de chave é baixado para seu computador.
Configurar credenciais da Identidade da carga de trabalho
Com a Identidade da carga de trabalho, o Google SecOps pode representar sua conta de serviço com segurança. Conclua as etapas a seguir para configurar a Identidade da carga de trabalho.
Configurar a instância de integração
Para acionar o processo de descoberta de identidade, primeiro configure os parâmetros básicos de conexão no Google SecOps:
Acesse Hub de conteúdo > Integrações de respostas.
Pesquise e selecione a integração do Google Cloud Storage.
Configure os seguintes parâmetros obrigatórios:
Raiz da API: insira o URL de base (como
https://storage.googleapis.com).E-mail da Identidade da carga de trabalho: insira o endereço de e-mail da conta de serviço que você criou anteriormente.
Verificar SSL: verifique se essa opção está ativada.
Deixe o campo Conta de serviço do usuário (JSON) em branco.
Clique em Salvar.
Identificar o e-mail de identidade exclusivo
Para identificar o endereço de identidade específico, é necessário acionar um teste de conectividade, porque o Google SecOps usa um principal interno específico para se comunicar com seus recursos do Google Cloud . Essa etapa garante que você esteja concedendo permissões ao principal de back-end correto.
Clique em Testar. O teste vai falhar.
Clique no botão close_small ao lado de Testar.
Pesquise na mensagem de erro um endereço de e-mail que comece com
gke-init-python@...ousoar-python@.... Copie esse e-mail exclusivo.
Conceder permissões de representação
Para estabelecer uma relação de confiança, é necessário conceder autoridade à identidade exclusiva para agir em nome da sua conta de serviço. Esta etapa final estabelece a ponte segura que permite que a integração acesse seus recursos usando tokens temporários de curta duração.
No console do Google Cloud , acesse IAM e administrador > Contas de serviço.
Selecione a conta de serviço de destino e acesse Permissões.
Clique em Conceder acesso.
No campo Novos participantes, cole o e-mail de identidade exclusivo que você copiou do Google SecOps.
No campo Atribuir papéis, selecione o papel
Service Account Token Creator(roles/iam.serviceAccountTokenCreator).Clique em Salvar.
Integrar o Cloud Storage ao Google SecOps
A integração requer os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Service Account |
Opcional
O conteúdo completo do arquivo de chave JSON da conta de serviço. |
Workload Identity Email |
Opcional.
O endereço de e-mail do cliente da conta de serviço usada para a representação da identidade da carga de trabalho. |
Project ID |
Opcional O ID do projeto a ser usado para a integração do Cloud Storage. Se você não definir um valor para esse parâmetro, o ID do projeto será
extraído do conteúdo do arquivo JSON fornecido no parâmetro |
Quota Project ID |
Opcional O ID do projeto Google Cloud que você usa para
APIs Google Cloud e faturamento. Esse parâmetro exige que você conceda o papel Se nenhum valor for fornecido, o ID do projeto será recuperado do
conteúdo do arquivo JSON fornecido no parâmetro
|
Para instruções sobre como configurar uma integração no Google SecOps, consulte Configurar integrações.
Você pode fazer mudanças depois, se necessário. Depois de configurar uma instância de integração, você pode usá-la em playbooks. Para mais informações sobre como configurar e oferecer suporte a várias instâncias, consulte Como oferecer suporte a várias instâncias.
Ações
Para mais informações sobre ações, consulte Responder a ações pendentes da sua mesa de trabalho e Realizar uma ação manual.
Fazer o download de um objeto de um bucket
Use essa ação para fazer o download de um objeto (arquivo) específico de um bucket do Cloud Storage.
Essa ação não é executada em entidades.
Entradas da ação
A ação "Fazer o download de um objeto de um bucket" exige os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Bucket Name |
Obrigatório O nome do bucket do Cloud Storage que contém o objeto a ser baixado. |
Object Name |
Obrigatório O nome completo do objeto para download. Se o objeto estiver em uma pasta no bucket, inclua o caminho da pasta, como |
Download Path |
Obrigatório O caminho absoluto para o objeto
transferido por download que leva a um diretório, por exemplo,
|
Saídas da ação
A ação "Fazer o download de um objeto de um bucket" fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Disponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Resultado JSON
O exemplo a seguir descreve a saída do resultado JSON recebida ao usar a ação "Fazer o download de um objeto de um bucket":
{
"object_name": "123.txt"
"download_path": "/usr/bin/share/download.txt"
}
Mensagens de saída
Em um Painel de casos, a ação "Fazer o download de um objeto de um bucket" fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
|
A ação foi concluída. |
Error executing action "Download an Object From a Bucket".
Reason: ERROR_REASON |
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores da saída do resultado do script ao usar a ação "Fazer o download de um objeto de um bucket":
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Receber a lista de controle de acesso de um bucket
Use a ação "Get a Bucket's Access Control List" para recuperar e exibir listas de controle de acesso (ACLs) dos buckets do Cloud Storage especificados.
Essa ação não é executada em entidades.
Entradas de ação
A ação "Get a Bucket's Access Control List" exige os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Bucket Name |
Obrigatório O nome do bucket do Cloud Storage para o qual você quer recuperar a ACL. Para recuperar ACLs de vários buckets, insira os nomes deles como uma string separada por vírgulas, como |
Saídas da ação
A ação "Receber a lista de controle de acesso de um bucket" fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Indisponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Resultado JSON
[
{"BucketName": "ziv",
"BucketACLs": [
{"Entity": "project-owners-ID",
"Role": "OWNER"}
]
}
]
Mensagens de saída
Em um mural de casos, a ação "Receber a lista de controle de acesso de um bucket" fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
|
A ação foi concluída. |
Error executing action "Get a Bucket's Access Control List".
Reason:
ERROR_REASON |
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores da saída do resultado do script ao usar a ação "Receber uma lista de controle de acesso de um bucket":
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Listar objetos do bucket
Use a ação "Listar objetos do bucket" para listar os objetos armazenados no bucket do Cloud Storage.
Essa ação não é executada em entidades.
Entradas da ação
A ação "List Bucket Objects" exige os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Bucket Name |
Obrigatório O nome do bucket de onde os objetos serão recuperados. |
Max Objects to Return |
Opcional O número de objetos a serem retornados. Por padrão, a ação retorna 50 objetos para cada execução. |
Retrieves the Access Control List of an object |
Opcional Se selecionada, a ação vai recuperar a ACL do objeto. Não selecionada por padrão. |
Saídas da ação
A ação "List Bucket Objects" fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Disponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Resultado JSON
Os exemplos a seguir descrevem as saídas de resultados JSON recebidas ao usar a ação "List Bucket Objects":
Se o parâmetro
Retrieves the Access Control List of an objectnão estiver selecionado:{ "Objects": [ { "ObjectName": "test.txt", "Bucket": "ContentType": "TimeCreated": " ", "TimeUpdated": " ", "Size": 18, "MD5": "7CjVfQ+Oz/C0pI08IKRdvQ==", "Owner": "", "CR32c": "RQEqxA==", "id": "siemplify-tip/test.txt/1604926667310271" } ] }Se o parâmetro
Retrieves the Access Control List of an objectestiver selecionado:{ "Objects": [ { "ObjectName": "test.txt", "Bucket": "BUCKET_NAME", "ContentType": "text/plain" "TimeCreated": " ", "TimeUpdated": " ", "Size": 18, "MD5": "7CjVfQ+Oz/C0pI08IKRdvQ==", "Owner": "", "CR32c": "RQEqxA==", "id": "BUCKET_NAME/test.txt/1604926667310271", "ObjectACL": [ { "entity": "user@example.com", "role": "OWNER" }] }, ] }
Mensagens de saída
Em um Case Wall, a ação Listar objetos do bucket fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
|
A ação foi concluída. |
Error executing action "List Bucket Objects". Reason:
ERROR_REASON |
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores para a saída do resultado do script ao usar a ação Listar objetos do bucket:
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Listar buckets
Use a ação "List Buckets" para recuperar uma lista de buckets do Cloud Storage.
Essa ação não é executada em entidades.
Entradas de ação
A ação "List Buckets" exige os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Max Results |
Opcional O número máximo de buckets a serem retornados. Por padrão, a ação retorna 50 buckets. |
Saídas da ação
A ação "List Buckets" fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Disponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Resultado JSON
O exemplo a seguir descreve a saída de resultado JSON recebida ao usar a ação "List Buckets":
{
"Buckets": [
{
"CreationDate": "2020-11-09T12:57:03.981Z",
"ModificationDate": "2020-11-09T12:57:03.981Z",
"Name": "testexample",
"Owner": "testexample"
}]
}
Mensagens de saída
Em um painel de casos, a ação "List Buckets" fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
|
A ação foi concluída. |
Error executing action "List Buckets". Reason:
ERROR_REASON |
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores da saída do resultado do script ao usar a ação "List Buckets":
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Ping
Use a ação Ping para testar a conectividade com o Cloud Storage.
Essa ação não é executada em entidades.
Entradas de ação
Nenhuma.
Saídas da ação
A ação fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Indisponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Mensagens de saída
Em um painel de casos, a ação de ping fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
Successfully connected to the Google Cloud Storage server with
the provided connection parameters! |
A ação foi concluída. |
Failed to connect to the Google Cloud Storage server! Error is
ERROR_REASON |
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores para a saída do resultado do script ao usar a ação Ping:
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Remover o acesso público do bucket
Use a ação "Remover acesso público do bucket" para remover o acesso público do bucket do Cloud Storage.
Para isso, conceda o papel Storage Admin à conta de serviço
que você usa na integração.
Essa ação não é executada em entidades.
Entradas de ação
A ação "Remover acesso público do bucket" exige os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Resource Name |
Obrigatório O nome do recurso do bucket. |
Prevent Public Access From Bucket |
Obrigatório Se selecionada, a ação configura o bucket para impedir possível acesso público. |
Saídas da ação
A ação "Remover acesso público do bucket" fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Indisponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Mensagens de saída
Em um Painel de Casos, a ação "Remover acesso público do bucket" fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
Successfully removed public access from bucket using Google
Cloud Storage: RESOURCE_NAME
|
A ação foi concluída. |
Error executing action "Remove Public Access From Bucket".
Reason: ERROR_REASON |
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores da saída do resultado do script ao usar a ação "Remover acesso público do bucket":
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Atualizar uma entrada de ACL em um bucket
Use a ação "Atualizar uma entrada de ACL no bucket" para atualizar uma entrada de ACL no bucket especificado do Cloud Storage.
Entradas da ação
A ação "Atualizar uma entrada de ACL no bucket" exige os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Bucket Name |
Obrigatório O nome do bucket para modificar a ACL. |
Entity |
Obrigatório A entidade que tem a permissão. Os valores possíveis são os seguintes:
Para mais informações sobre entidades, consulte Representações de recursos. |
Role |
Obrigatório A permissão de acesso necessária para a entidade. Os possíveis valores são os seguintes:
|
Saídas da ação
A ação "Atualizar uma entrada de ACL no bucket" fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Indisponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Mensagens de saída
Em um quadro de casos, a ação "Atualizar uma entrada de ACL no bucket" fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
|
A ação foi concluída. A função atual não corresponde ao valor do parâmetro Role. Verifique o valor do parâmetro Role. |
Successfully updated ACL entity:
ENTITY to role:
ROLE in bucket
BUCKET_NAME. |
A ação foi concluída. |
|
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores da saída do resultado do script ao usar a ação "Atualizar uma entrada de ACL no bucket":
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Fazer upload de um objeto em um bucket
Use a ação "Fazer upload de um objeto para um bucket" para fazer upload de um objeto no bucket do Cloud Storage.
Essa ação não é executada em entidades.
Entradas de ação
A ação "Fazer upload de um objeto para um bucket" requer os seguintes parâmetros:
| Parâmetros | Descrição |
|---|---|
Bucket Name |
Obrigatório O nome do bucket em que o objeto será enviado. |
Source File Path |
Obrigatório O caminho absoluto para o arquivo a ser enviado, como
|
Object Name |
Obrigatório O nome do objeto enviado por upload no bucket. |
Saídas da ação
A ação "Fazer upload de um objeto em um bucket" fornece as seguintes saídas:
| Tipo de saída da ação | Disponibilidade |
|---|---|
| Anexo do Painel de Casos | Indisponível |
| Link do Painel de casos | Indisponível |
| Tabela do painel de casos | Indisponível |
| Tabela de enriquecimento | Indisponível |
| Resultado JSON | Disponível |
| Mensagens de saída | Disponível |
| Resultado do script | Disponível |
Resultado JSON
{
"object_id":"BUCKET_NAME/errorlog.txt/1610616919132517",
"Object_name":"errorlog.txt",
"md5_hash":"PTdL8D6pBwIKyMfIXR/H9A==",
"object_path":"/b/BUCKET_NAME/o/errorlog.txt"
}
Mensagens de saída
Em um mural do caso, a ação "Fazer upload de um objeto em um bucket" fornece as seguintes mensagens de saída:
| Mensagem de resposta | Descrição da mensagem |
|---|---|
|
A ação foi concluída. |
Error executing action "Upload an Object To a Bucket". Reason:
ERROR_REASON |
Falha na ação. Verifique a conexão com o servidor, os parâmetros de entrada ou as credenciais. |
Resultado do script
A tabela a seguir descreve os valores da saída do resultado do script ao usar a ação "Fazer upload de um objeto para um bucket":
| Nome do resultado do script | Valor |
|---|---|
is_success |
True ou False |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.