Conector Qualys Vulnerability Management (usando o Azure Functions) para o Microsoft Sentinel

O conector de dados Qualys Vulnerability Management (VM) oferece a capacidade de ingerir dados de detecção de host de vulnerabilidade no Microsoft Sentinel por meio da API do Qualys. O conector dá visibilidade dos dados de detecção de host de verificações de vulnerabilidade. Esse conector fornece ao Microsoft Sentinel a capacidade de exibir painéis, criar alertas personalizados e melhorar a investigação

Atributos do conector

Atributo do conector Description
Configurações de aplicativo apiUsername
apiPassword
workspaceID
workspaceKey
uri
filterParameters
timeInterval
logAnalyticsUri (opcional)
Código do aplicativo de funções do Azure https://aka.ms/sentinel-QualysVM-functioncodeV2
Tabela(s) do Log Analytics QualysHostDetectionV2_CL
QualysHostDetection_CL
Suporte às regras de coleta de dados Sem suporte no momento
Com suporte por Microsoft Corporation

Exemplos de consulta

10 principais vulnerabilidades Qualys V2 detectadas

QualysHostDetectionV2_CL

| extend Vulnerability = tostring(QID_s)

| summarize count() by Vulnerability

| top 10 by count_

10 principais vulnerabilidades detectadas

QualysHostDetection_CL

| mv-expand todynamic(Detections_s)

| extend Vulnerability = tostring(Detections_s.Results)

| summarize count() by Vulnerability

| top 10 by count_

Pré-requisitos

Para integrar com o Qualys Vulnerability Management (usando o Azure Functions) verifique se você tem:

Instruções de instalação do fornecedor

Observação

Esse conector usa o Azure Functions para se conectar à VM do Qualys a fim de efetuar pull dos seus logs no Microsoft Sentinel. Isso pode resultar em custos adicionais de ingestão de dados. Consulte a página de preços do Azure Functions para obter detalhes.

(Etapa opcional): armazene o espaço de trabalho e as chaves de autorização ou tokens da API com segurança no Azure Key Vault. O Azure Key Vault fornece um mecanismo seguro para armazenar e recuperar valores de chave. Siga estas instruções para usar o Azure Key Vault com um aplicativos do Azure Function.

ETAPA 1 – Etapas de configuração da API de VM do Qualysmáquina virtual

  1. Faça login no console do Qualys Vulnerability Management com uma conta de administrador, selecione a guia Usuários e a subguia Usuários.
  2. Clique no menu suspenso Novo e selecione Usuários.
  3. Crie um nome de usuário e uma senha para a conta de API.
  4. Na guia Funções de usuário, verifique se a função da conta está definida como Gerente e que haja permissão de acesso para a GUI e a API
  5. Faça logoff da conta de administrador e faça logon no console do com as novas credenciais de API para validação, depois faça logoff da conta de API.
  6. Faça logon novamente no console usando uma conta de administrador e modifique as Funções de Usuário das contas de API, removendo o acesso à GUI.
  7. Salvar todas as alterações.

ETAPA 2 – Escolha UMA das duas opções de implantação a seguir para implantar o conector e a Função do Azure associada

IMPORTANTE: antes de implantar o conector da VM do Qualys, tenha a ID do Espaço de Trabalho e a Chave Primária do Espaço de Trabalho (podem ser copiadas do seguinte), bem como a(s) Chaves de Autorização da API de VM do Qualys, prontamente disponíveis.

Observação

Esse conector foi atualizado. Se você já tiver implantado uma versão anterior e deseja atualizá-la, exclua a Função do Azure de VM do Qualys existente antes de reimplantar esta versão. Use a pasta de trabalho da versão V2 do Qualys, detecções.

Opção 1 – Modelo do ARM (Azure Resource Manager)

Utilize esse método para implantação automatizada do conector de VM do Qualys usando um Modelo ARM.

  1. Clique no botão Implantar no Azure abaixo.

    Deploy To Azure

  2. Selecione a Assinatura, o Grupo de Recursos e o Local de sua preferência.

  3. Insira a ID do Espaço de Trabalho, a Chave do Espaço de Trabalho, o Nome de Usuário da API, a Senha da API, atualize o URI e quaisquer Parâmetros de Filtro de URI adicionais (cada filtro deve ser separado por um símbolo "&", sem espaços.)

  • Insira o URI que corresponde à sua região. A lista completa de URLs do Servidor de API pode ser encontrada aqui – não há necessidade de adicionar um sufixo de tempo ao URI, o plicativo de funções anexará dinamicamente o valor temporal ao URI no formato adequado.
  • O Intervalo de tempo padrão é definido para efetuar pull dos últimos 5 (cinco) minutos de dados. Se o intervalo de tempo precisar ser modificado, é recomendável alterar o gatilho do temporizador do aplicativo de funções adequadamente (no arquivo function.json, pós-implantação) para evitar a sobreposição da ingestão de dados.
  • Observação: se estiver usando segredos do Azure Key Vault para qualquer um dos valores acima, use o esquema @Microsoft.KeyVault(SecretUri={Security Identifier}) no lugar dos valores da cadeia de caracteres. Para obter mais detalhes, consulte a documentação de referências do Key Vault. 4. Marque a caixa de seleção com o rótulo Concordo com os termos e condições declarados acima. 5. Clique em Comprar para implantar.

Opção 2 – Implantação Manual do Azure Functions

Use as instruções passo a passo a seguir para implantar o conector do VM do Qualys manualmente com o Azure Functions.

1. Criar um aplicativo de funções

  1. No Portal do Azure, navegue até Aplicativo de funções e selecione + Adicionar.
  2. Na guia Noções básicas, verifique se a pilha de tempo de execução está definida como Powershell Core.
  3. Na guia Hospedagem, verifique se o tipo de plano Consumo (sem servidor) está selecionado.
  4. Faça outras alterações de configuração preferíveis, se necessário, e clique em Criar.

2. Importar código do aplicativo de funções

  1. No aplicativo de funções recém-criado, selecione Funções no painel esquerdo e clique em + Nova Função.
  2. Selecione Gatilho do temporizador.
  3. Insira um Nome de função exclusivo e deixe o agendamento cron padrão a cada 5 minutos e clique em Criar.
  4. Clique em Código + Teste no painel esquerdo.
  5. Copie o Código do aplicativo de funções e cole-o no editor run.ps1 do aplicativo de funções.
  6. Clique em Salvar.

3. Configurar o Aplicativo de Funções

  1. No Aplicativo de Funções, selecione o Nome do Aplicativo de Funções e selecione Configuração.
  2. Na guia Configurações do aplicativo, selecione + Novas configurações do aplicativo.
  3. Adicione cada uma das 8 (oito) configurações de aplicativo a seguir individualmente, com seus respectivos valores de cadeia de caracteres (diferencia maiúsculas de minúsculas): apiUsername apiPassword workspaceID workspaceKey uri filterParameters timeInterval logAnalyticsUri (opcional)
  • Insira o URI que corresponde à sua região. A lista completa de URLs do Servidor de API pode ser encontrada aqui. O valor uri deve seguir o seguinte esquema: https://<API Server>/api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after= – não é necessário adicionar um sufixo de tempo ao URI, o aplicativo de funções acrescentará dinamicamente o valor temporal ao URI no formato adequado.
  • Adicione parâmetros de filtro adicionais, para a variável filterParameters, que precisam ser acrescentados ao URI. Cada parâmetro deve ser separado por um símbolo "&" e não deve incluir espaços.
  • Defina o timeInterval (em minutos) como o valor de 5 para corresponder ao gatilho do temporizador a cada 5 minutos. Se o intervalo de tempo precisar ser modificado, é recomendável alterar o gatilho do temporizador do aplicativo de funções adequadamente para evitar a sobreposição da ingestão de dados.
  • Observação: se estiver usando o Azure Key Vault, use o esquema @Microsoft.KeyVault(SecretUri={Security Identifier}) no lugar dos valores da cadeia de caracteres. Para obter mais detalhes, consulte a documentação de referências do Key Vault.
  • Use logAnalyticsUri para substituir o ponto de extremidade da API de análise de logs para uma nuvem dedicada. Por exemplo, para a nuvem pública, deixe o valor vazio; para o ambiente de nuvem do Azure GovUS, especifique o valor no seguinte formato: https://<CustomerId>.ods.opinsights.azure.us. 4. Assim que todas as configurações do aplicativo tiverem sido inseridas, clique em Salvar.

4. Configure host.json.

Devido à grande quantidade de dados de detecção de host do Qualys que estão sendo ingeridos, isso pode fazer com que o tempo de execução ultrapasse o tempo limite do Aplicativo de funções padrão de cinco (5) minutos. Aumente a duração do tempo limite padrão para o máximo de dez (10) minutos, no Plano de consumo, para dar mais tempo para a execução do Aplicativo de funções.

  1. No Aplicativo de funções, selecione o nome do Aplicativo de funções e selecione a folha Editor do Serviço de Aplicativo.
  2. Clique em Ir para abrir o editor e, em seguida, selecione o arquivo host.json no diretório wwwroot.
  3. Adicionar a linha "functionTimeout": "00:10:00", acima da linha managedDependancy
  4. Verifique se SALVO aparece no canto superior direito do editor, depois saia do editor.

OBS.: se for necessária uma duração de tempo limite maior, cogite atualizar para um Plano do Serviço de Aplicativo

Próximas etapas

Para obter mais informações, acesse a solução relacionada no Azure Marketplace.