Testando o Veeam Incident API

Testando o Veeam Incident API

o Veeam Incident API existe desde a versão 12.1 do Veeam Backup & Replication (VBR) e a ideia por trás desta funcionalidade é permitir que ferramentas de segurança cibernética avisem sobre infecções assim que elas forem detectadas. Desta forma, o Veeam consegue fazer um backup rapidamente e já marca-lo como comprometido.

Existe uma infinidade de soluções de segurança cibernética que são usadas para detectar, analisar e responder a ameaças, conhecemos a sopa de letrinhas de EDR, SIEM, NDR, MDR, SOAR entre outras. De uma forma simplificada, qualquer solução que consiga identificar e reportar alguma ameaça para o Veeam via API, conseguirá usufruir da funcionalidade do Veeam Incident API.

Sem mais delongas, vamos ver na prática como habilitar e validar o funcionamento disso tudo. O primeiro e unico passo no lado do VBR é habilitar o Veeam Incident API, para isso navegue até Malware Detection > Incident API > Perform a Quick Backup upon receiving an external event.

Agora a configuração é diretamente na solução de segurança cibernética, como eu não tenho nenhuma no meu laboratório, vou usar o postman para simular a detecção de ameaças e reportar isso para o VBR. O primeiro passo é efetuar a autenticação no VBR via REST API e eu escrevi um artigo sobre isso recentemente (aqui).

Só continue se você já executou estas etapas e a variável veeamAccessToken está configurada corretamente. Vamos então executar o POST {{veeamBackupServer}}/api/v1/malwareDetection/events que irá criar o evento de malware no Veeam e por consequência irá disparar o Quick Backup. Para que o VBR consiga entender o que estamos enviando, precisamos adicionar um código ao Body seguindo o que este documento determina como requerido. Basicamente temos o horário que a ameaça foi descoberta (detectionTimeUtc – padrão UTC) e a máquina afetada (machine – string), neste caso precisamos escolher pelo menos duas formas de identificação (fqdn, ipv4, ipv6 ou uuid). Além disso, é necessário informar os detalhes sobre a ameaça identificada (details – string) e por fim uma informação de quem descobriu a ameaça (engine – string). Abaixo compartilho um exemplo:

{
  "detectionTimeUtc": "2025-04-10T12:34:47Z",
  "machine": {
    "fqdn": "nim-sql.caverna.local",
    "ipv4": "192.168.10.39"
  },
  "details": "Malware encontrado. Valide o arquivo NaoTemNadaAqui.txt localizado em C:",
  "engine": "ConzaGuard"
}

Lembre-se de configurar a variável veeamAccessToken com o valor atualizado do seu token, caso contrário receberá um “401 Unauthorized”.

Vale reforçar que estamos fazendo um POST, ou seja, enviando informações via REST API para o VBR fazer algo, por isso, é necessário navegar até a aba Body e incluir as informações que precisamos. Quando estiver tudo pronto, e só clicar em send. A resposta esperada é “201 Created” e um json com a resposta do comando. Aqui estou simulando que a minha solução de segurança encontrou algo na VM NIM-SQL.

Uma tarefa de backup incremental foi iniciada instantaneamente no VBR. Lembre-se que o Quick Backup executa um backup incremental e para que isso funcione é fundamental que a máquina em questão já tenha feito algum backup prévio.

E como o próprio nome sugere, é um backup rápido. No meu caso levou apenas 47 segundos.

Além de executar o backup, o Veeam ainda marca os novos arquivos de backups com uma flag de malware.

Se editar o job de backup, é possível observar que a máquina NIM-SQL está marcada com a mesma flag. Enquanto essa flag não for removida manualmente, tanto a máquina quanto os novos backups continuarão marcados como “suspeitos”.

Para limpar essa flag, basta navegar até Inventory > Malware Detection. Selecione o achado em questão e clique em Mark as clean. ATENÇÃO: aqui é um ambiente de laboratório, em ambiente produtivo antes de marcar como limpo você deve fazer uma análise completa para garantir que de fato a máquina e os backups estão verdadeiramente limpos.

A última etapa consiste em escrever a razão que você considera que está tudo limpo (isso fica registrado no log) e se você tiver certeza que foi um falso positivo, marque para limpar os restores points correspondentes a detecção.

É isso, aí pessoal. Esta foi uma forma simples e rápida de testar a funcionalidade de Incident API do Veeam. Até mais!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *