CSV
Versão de integração: 31.0
Pré-requisitos de autorização
Para trabalhar com ficheiros através da integração, tem de ter as autorizações corretas. Execute o seguinte comando para fornecer as autorizações corretas para uma pasta: chown scripting:scripting "directory_path"
Configure a integração de CSV no Google Security Operations
Para obter instruções detalhadas sobre como configurar uma integração no Google SecOps, consulte o artigo Configure integrações.
Parâmetros de integração
Use os seguintes parâmetros para configurar a integração:
Nome a apresentar do parâmetro | Tipo | Valor predefinido | É obrigatório | Descrição |
---|---|---|---|---|
Nome da instância | String | N/A | Não | Nome da instância para a qual pretende configurar a integração. |
Descrição | String | N/A | Não | Descrição da instância. |
Executar remotamente | Caixa de verificação | Desmarcado | Não | Selecione o campo para executar a integração configurada remotamente. Depois de selecionada, a opção aparece para selecionar o utilizador remoto (agente). |
Ações
Guarde JSON em CSV
Descrição
Guarde um objeto JSON num ficheiro CSV.
Parâmetros
Nome do parâmetro | Tipo | Valor predefinido | Obrigatório | Descrição |
---|---|---|---|---|
Objeto JSON | JSON | N/A | Sim | Especifica o objeto JSON a guardar como CSV. |
Substituir | Booleano | Falso | Não | Se estiver ativada, a ação substitui o ficheiro existente. |
Caminho do ficheiro | String | N/A | Sim | Especifica o caminho absoluto do ficheiro para o ficheiro CSV recém-criado. Se apenas for fornecido o nome do ficheiro, a ação armazena o ficheiro numa pasta /tmp/ . |
Executar em
N/A
Resultados da ação
Resultado do script
Nome do resultado do script | Valor |
---|---|
is_success | Verdadeiro/Falso |
Resultado JSON
{"filepath": "{file name}"}
Case Wall
A ação fornece as seguintes mensagens de saída:
Mensagem de saída | Descrição da mensagem |
---|---|
O objeto JSON foi transformado com êxito e guardado no caminho do ficheiro fornecido. | A ação foi bem-sucedida. |
Não foi possível encontrar o ficheiro para o caminho indicado. | O ficheiro não existe. |
Não foi encontrada atividade para as contas de serviço fornecidas na Google Cloud inteligência de políticas | A ação não conseguiu encontrar dados para nenhuma das contas de serviço indicadas. |
Erro ao executar a ação "Guardar JSON em CSV". | A ação devolveu um erro. Verifique a ligação ao servidor, os parâmetros de entrada ou as credenciais. |
Pesquise por string
Descrição
Pesquise strings em ficheiros CSV.
Parâmetros
Nome do parâmetro | Tipo | Valor predefinido | É obrigatório | Descrição |
---|---|---|---|---|
Caminho CSV | String | N/A | Sim | Especifique o caminho do ficheiro CSV ou o caminho de uma pasta que contenha todos os ficheiros CSV. Se for fornecida uma pasta, a ação vai iterar sobre todos os ficheiros CSV na pasta. |
Coluna CSV | String | N/A | Não | Especifique uma lista de colunas separadas por vírgulas que podem conter informações de entidades. Se não for fornecido nada, a ação vai pesquisar em todas as colunas. |
Dias para trás | String | 10 | Não | Especifique quantos dias para trás quer processar os ficheiros CSV. |
Valor de pesquisa | String | N/A | Não | Especifique uma string que precisa de ser pesquisada. Se a opção "Pesquisar várias strings" estiver ativada, este parâmetro é tratado como uma lista de strings separadas por vírgulas que têm de ser pesquisadas. |
Devolve apenas a primeira linha. | Caixa de verificação | Desmarcado | Não | Se estiver ativada, a ação só devolve 1 linha no primeiro ficheiro que corresponda à entidade. |
Tipos de codificação de ficheiros | String | utf-8, latin-1, iso-8859-1 | Sim | Uma lista separada por vírgulas dos tipos de codificação CSV usados para descodificar os seus ficheiros CSV, por exemplo, utf-8, latin-1, iso-8859-1, utf-16... A ordem em que os tipos de codificação são fornecidos define a ordem em que são usados para descodificar ficheiros, por exemplo (do exemplo acima), o UTF-8 tem a prioridade mais alta e é usado principalmente para descodificar todos os ficheiros. Se existir um ficheiro CSV que use alguma outra codificação, é usada a codificação seguinte na ordem, ou seja, a codificação latin-1, e assim sucessivamente, até ser usada a última codificação. |
Pesquisar várias strings | Caixa de verificação | Desmarcado | Não | Se estiver ativada, a opção "Valor de pesquisa" funciona como uma lista de valores separados por vírgulas, em vez de uma única string. |
Campos a devolver | CSV | N/A | Não | Especifique uma lista de valores separados por vírgulas que têm de ser devolvidos. |
Exemplos de utilização
Pesquise strings em ficheiros CSV.
Executar em
Esta ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
count_rows_csv | Qualquer número de linhas | count_rows += 1 |
Resultado JSON
[
{
"EntityResult": {
"Field2": "Value2",
"Field3": "Value3",
"Field1": "Value1",
"Field4": "Value4",
"Field5": "Value5"
},
"Entity": "host"
}, {
"EntityResult": {
"Field2": "Value2",
"Field3": "Value3",
"Field1": "Value1",
"Field4": "Value4",
"Field5": "Value5"
}, "Entity": "1.1.1.1"
}
]
Case Wall
Tipo de resultado | Valor / descrição | Tipo |
---|---|---|
Mensagem de saída* | Para registos encontrados: "Informações encontradas com êxito sobre as seguintes strings: \n (search_string)" Se não forem encontrados registos para algumas strings: "A ação não conseguiu encontrar informações sobre as seguintes strings:" Se não houver êxito para todos os registos: "Não foram encontradas informações para os itens fornecidos." Se todas as codificações forem inválidas: "Erro ao executar a ação "Pesquisa de CSV por string". As codificações fornecidas são inválidas. Verifique a ortografia." |
Geral |
Pesquise por entidade
Descrição
Pesquise entidades em ficheiros CSV e enriqueça-as.
Parâmetros
Nome do parâmetro | Tipo | Valor predefinido | É obrigatório | Descrição |
---|---|---|---|---|
Caminho CSV | String | N/A | Sim | Especifique o caminho do ficheiro CSV ou o caminho de uma pasta que contenha todos os ficheiros CSV. Se for fornecida uma pasta, a ação vai iterar sobre todos os ficheiros CSV na pasta. |
Coluna CSV | String | N/A | Sim | Especifique uma lista de colunas separadas por vírgulas que podem conter informações de entidades. Se não for fornecido nada, a ação vai pesquisar em todas as colunas. |
Dias anteriores | String | 10 | Sim | Especifique quantos dias para trás quer processar os ficheiros CSV. |
Marcar como suspeito | Caixa de verificação | Desmarcado | Não | Se estiver ativada, a ação marca a entidade como suspeita, se tiver sido encontrada no ficheiro. |
Devolve apenas a primeira linha. | Caixa de verificação | Desmarcado | Não | Se estiver ativada, a ação só devolve 1 linha no primeiro ficheiro que corresponda à entidade. |
Tipos de codificação de ficheiros | String | utf-8, latin-1, iso-8859-1 | Sim | Uma lista separada por vírgulas dos tipos de codificação CSV usados para descodificar os seus ficheiros CSV, por exemplo, utf-8, latin-1, iso-8859-1, utf-16... A ordem em que os tipos de codificação são fornecidos define a ordem em que são usados para descodificar ficheiros, por exemplo (do exemplo acima), o UTF-8 tem a prioridade mais alta e é usado principalmente para descodificar todos os ficheiros. Se existir um ficheiro CSV que use alguma outra codificação, é usada a codificação seguinte na ordem, ou seja, a codificação latin-1, e assim sucessivamente, até ser usada a última codificação. |
Enriquecer entidades | Caixa de verificação | Marcado | Não | Se estiver ativada, a ação adiciona informações do ficheiro CSV e adiciona-as à tabela de enriquecimento da entidade. |
Crie estatísticas | Caixa de verificação | Marcado | Não | Se estiver ativada, a ação cria uma estatística, se a entidade tiver sido encontrada no ficheiro. |
Campos a devolver | CSV | N/A | Não | Especifique uma lista de valores separados por vírgulas que têm de ser devolvidos. |
Executar em
Esta ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
count_rows_csv | Qualquer número de linhas | count_rows += 1 |
Resultado JSON
[
{
"EntityResult": [{
"domain": "example.dom",
"fileHash": "cbbc5aea3d4c7ec193aa2ff3b52df36ebb12338b18c9bb53fc4896115efaf78d",
"reporter": "Symantec Antivirus",
"app": "Arcsight",
"id": "1011",
"eventTime": "9/4/2017 10:00",
"antivirusAction": "blocked",
"virusName": "ECAT",
"rule": "malicious",
"eventName": "Virus detected",
"User": "Ziv",
"eventHostName": "WS-ZivDevComp",
"File Source Path": "C:\\\\Users\\\\Default\\\\Desktop\\\\stringTimeRaw.csv",
"machineAddress": "192.168.11.11"
}, {
"domain": "SmartCompany.dom",
"fileHash": "cbbc5aea3d4c7ec193aa2ff3b52df36ebb12338b18c9bb53fc4896115efaf78d",
"reporter": "Symantec Antivirus",
"app": "ESM",
"id": "1012",
"eventTime": "9/4/2017 10:00",
"antivirusAction": "allowed",
"virusName": "ECAT",
"rule": "malicious",
"eventName": "Virus detected",
"User": "GG",
"eventHostName": "WS-GGDevComp",
"File Source Path": "C:\\\\Users\\\\Default\\\\Desktop\\\\stringTimeRaw.csv",
"machineAddress": "192.168.11.11"
}],
"Entity": "192.168.11.11"
}
]
Case Wall
Tipo de resultado | Valor / descrição | Tipo |
---|---|---|
Mensagem de saída* | Para entidades encontradas: "Informações encontradas com êxito sobre as seguintes entidades: \n (entity.identifier)" Para entidades não encontradas: "Não foram encontradas informações sobre as seguintes entidades: \n (entity.identifier)" Se não houver êxito para todas as entidades: "Não foram encontradas informações para as entidades fornecidas." Se todas as codificações forem inválidas: "Erro ao executar a ação "Pesquisa de CSV por string". As codificações fornecidas são inválidas. Verifique a ortografia." |
Geral |
Tchim-tchim
Descrição
Testar conetividade.
Parâmetros
N/A
Executar em
Esta ação é executada em todas as entidades.
Resultados da ação
Resultado do script
N/A
Resultado JSON
N/A
Conetores
Conetor CSV
Descrição
Obter dados de ficheiros CSV localizados numa pasta específica e converter estes dados em alertas no sistema Google SecOps.
Este tópico ilustra o mecanismo e a configuração através dos quais o Google SecOps produz ficheiros CSV, juntamente com fluxos de trabalho suportados e ações realizadas na plataforma.
Exemplos de utilização
Um cliente tem ficheiros CSV provenientes de um sistema e os ficheiros podem ter codificações diferentes.
* Add support for comma-separated encodings in the Encoding field in the
connector.
* The connector should try the different encodings by their order in
the field (first encoding - highest priority, last - lowest
priority) with try/except. If no matching encoding was found -
consider the file as an error and notify.
* Put a default value for the fields - a list of most common CSV
encodings by priority (utf8, latin1, and iso...)
Acesso a ficheiros CSV
Acesso do Google SecOps a ficheiros CSV: configure uma pasta para os ficheiros CSV.
Encaminhamento de registos CSV para o Google SecOps
Trabalhar com registos de ficheiros CSV
Quando configura o Google SecOps para funcionar com ficheiros CSV como uma origem de alerta, é-lhe pedido que indique uma pasta específica a partir da qual os ficheiros CSV vão ser obtidos. O Google SecOps vai obter todos os registos num ficheiro CSV e encaminhá-los para tradução e contextualização como alertas para casos.
Como mapear a gravidade no conector
Para mapear a gravidade, tem de especificar que campo deve ser usado para obter o valor da gravidade no parâmetro "Nome do campo de gravidade". Na resposta, pode obter 3 tipos de valores: números inteiros, números de vírgula flutuante e strings. Para números inteiros e de ponto flutuante, não precisa de fazer nenhuma configuração adicional. O conetor vai ler esses valores e mapeá-los de acordo com as normas do Google SecOps. Um lembrete rápido de como os valores inteiros são mapeados:
- 100 – Crítico
- 100 > x >= 80: alta
- 80 > x >=60 Médio
- 60 > x >=40 Baixo
- 40 > x Informativas
Se, na resposta, estivermos a trabalhar com strings, é necessária uma configuração adicional. Na pasta onde se encontram os scripts do conetor, tem um ficheiro de configuração com o nome severity_map_config.json. Este ficheiro define regras de mapeamento para a gravidade.
Inicialmente, o ficheiro tem o seguinte aspeto: 1 2 3
{ "Default": 50 }
Imagine uma situação em que os valores necessários estão localizados em event.severity. event.severity pode conter os seguintes valores: "Malicious", "Benign" e "Unknown".
Primeiro, temos de especificar no parâmetro "Nome do campo de gravidade" que vamos usar event.severity. Em segundo lugar, temos de atualizar o ficheiro de configuração. Após as alterações, o ficheiro severity_map_config.json deve ter o seguinte aspeto: 1 2 3 4 5 6 7 8
{
"event.severity": { "Malicious": 100, "Unknown": 60, "Benign": -1 }, "Default":
50 }
Agora, quando o conector receber um evento com event.severity
= "Malicious", vai atribuir-lhe a gravidade Crítica.
Configure o conetor CSV no Google SecOps
Para ver instruções detalhadas sobre como configurar um conetor no Google SecOps, consulte o artigo Configurar o conetor.
Parâmetros do conetor
Use os seguintes parâmetros para configurar o conector:
Nome do parâmetro | Tipo | Valor predefinido | É obrigatório | Descrição |
---|---|---|---|---|
Nome do campo do produto | String | device_product | Sim | O nome do campo usado para determinar o produto do dispositivo. |
Nome do campo de evento | String | nome | Não | O nome do campo usado para determinar o nome do evento (subtipo). |
Limite de tempo do script (segundos) | String | 60 | Sim | O limite de tempo (em segundos) para o processo Python que executa o script atual. |
Caminho da pasta CSV | String | N/A | Sim | Caminho da pasta que contém todos os ficheiros CSV que têm de ser carregados. |
Limite de CSV | String | N/A | Não | Quantos ficheiros CSV processar por iteração. |
Nome do campo do gerador de regras | String | N/A | Não | Nome do campo que contém informações sobre o gerador de regras. |
Nome do campo de tempo | String | N/A | Não | Nome do campo que contém informações sobre a hora do evento. |
O CSV tem cabeçalho | Caixa de verificação | Marcado | Sim | Indica se o ficheiro CSV tem cabeçalho. |
Tipo de codificação de ficheiros | String | utf-8 | Sim | Defina o tipo de codificação CSV, por exemplo, iso-8859-1, latin1, utf-8, utf-16. |
Nome do campo de alerta | String | N/A | Não | Nome do campo que contém informações sobre o nome do alerta. |
Nome do campo de gravidade | String | N/A | Não | Nome do campo que contém informações sobre a gravidade. |
Regras do conetor
Suporte de proxy
O conetor não suporta proxy.
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.