Como Exportar Eventos do IBM QRadar

Como Exportar Eventos do IBM QRadar

SOC Prime Team
SOC Prime Team linkedin icon Seguir

A maneira mais limpa de obter eventos brutos do QRadar é através da API Ariel REST. Execute uma consulta AQL que seleciona UTF8(payload), aguarde a conclusão da pesquisa e obtenha os resultados como JSON. Você terminará com as linhas de log originais exatamente como suas fontes de log as enviaram. A guia de Atividade de Log também pode exportar resultados de pesquisa, mas não em um formato que o LogTotal suporta hoje. 

O QRadar está no centro de muitos SOCs, e cedo ou tarde alguém precisa de uma parte de seus dados fora do console: um parceiro IR, uma segunda opinião, uma verificação rápida sem criar uma nova regra. O Prime Core possui 23.656 regras de detecção para o QRadar, mapeadas para 674 técnicas MITRE ATT&CK. Abaixo está como extrair uma parte limpa de eventos brutos, sanitizá-la e investigá-la gratuitamente no LogTotal.

Este guia cobre o QRadar SIEM, on-premises e software. Se sua empresa usava o QRadar SaaS, que a IBM vendeu para a Palo Alto Networks em 2024, você pode ter migrado para o Cortex XSIAM desde então.

Comece Gratuito

Antes de começar

Um token de serviço autorizado. Crie um em Administração → Serviços Autorizados e defina uma data de expiração. O token carrega um papel de usuário e um perfil de segurança. O perfil de segurança decide quais fontes de log e redes ele pode ver. Se for mais restrito que o seu, a API retorna silenciosamente menos eventos do que a Atividade de Log mostra. Esse é o momento mais comum de “onde foram meus eventos?” com exportações do QRadar.

Retenção. Os eventos vivem enquanto seus baldes de retenção permitirem (Administração → Retenção de Eventos). Se a janela que você precisa for mais antiga do que isso, não há nada para exportar.

Acesso à rede. A API é executada na porta HTTPS do console. Consoles frequentemente usam certificados autoassinados; aponte o curl para o CA correto com –cacert ao invés de desativar a verificação.

Passo 1: Escreva a consulta AQL

Selecione o payload mais alguns campos para contexto:

SELECT DATEFORMAT(starttime, 'yyyy-MM-dd HH:mm:ss') AS event_time,
LOGSOURCENAME(logsourceid) AS log_source,
QIDNAME(qid) AS event_name,
UTF8(payload) AS payload
FROM events
WHERE LOGSOURCENAME(logsourceid) = 'web-03'
START '2026-10-19 00:00' STOP '2026-10-20 00:00'

Algumas notas da experiência:

  • UTF8(payload) é a parte importante. Sem isso, o payload retorna como bytes codificados, não texto de log legível.
  • Restringa. Filtro por nome de fonte de log ou por tipo com LOGSOURCETYPENAME(devicetype) ILIKE ‘%Linux%’, e mantenha a janela apertada.
  • START / STOP para janelas exatas, ÚLTIMAS 24 HORAS para janelas relativas.
  • Teste primeiro in Atividade de Log → Pesquisa Avançada. É o mesmo AQL, e você verá a contagem de eventos antes de exportar.

Eventos do Windows coletados através do WinCollect chegam como payloads de texto, não como EVTX. O que você exporta é esse texto.

Passo 2: Execute através da API Ariel

Salve isso como qradar_export.sh. Ele inicia a pesquisa, aguarda por ela e escreve um payload bruto por linha:

#!/usr/bin/env bash
set -euo pipefail

QRADAR="https://qradar.example.com"
TOKEN="${QRADAR_TOKEN:?set QRADAR_TOKEN first}"
AQL="SELECT UTF8(payload) AS payload FROM events WHERE LOGSOURCENAME(logsourceid) = 'web-03' START '2026-10-19 00:00' STOP '2026-10-20 00:00'"

# 1. iniciar a pesquisa (-G coloca a consulta na URL, -X POST mantém o método)
SID=$(curl -sS -G -X POST -H "SEC: $TOKEN" -H "Accept: application/json"
--data-urlencode "query_expression=$AQL"
"$QRADAR/api/ariel/searches" | jq -r '.search_id')

# 2. aguarde sua finalização
while :; do
STATUS=$(curl -sS -H "SEC: $TOKEN" "$QRADAR/api/ariel/searches/$SID" | jq -r '.status')
[ "$STATUS" = "COMPLETED" ] && break
if [ "$STATUS" = "ERROR" ] || [ "$STATUS" = "CANCELED" ]; then echo "Search $STATUS"; exit 1; fi
sleep 5
done

# 3. buscar resultados: payloads brutos, um por linha
curl -sS -H "SEC: $TOKEN" -H "Accept: application/json"
"$QRADAR/api/ariel/searches/$SID/results" | jq -r '.events[].payload' > web-03_qradar_1019.log

Quer eventos estruturados em vez disso, com tempo e fonte de log como campos? Selecione essas colunas na AQL e use jq -c ‘.events[]’ na última etapa. Você obtém um objeto JSON por linha.

Para conjuntos de resultados muito grandes, busque os resultados em páginas com um cabeçalho Range, por exemplo -H “Range: items=0-49999”, depois os próximos 50.000.

Passo 3: Faça upload, sanitização e revisão no LogTotal

  1. Carregar. Abra logtotal.com e solte no arquivo. 
  2. Sanitize. Revise antes de continuar.
  3. Revisar. 

Quando dá errado

SintomaCausa provávelFix
401 da APIToken inválido, expirado, ou o cabeçalho SEC está faltandoVerifique o cabeçalho; crie um novo token
Menos eventos do que a Atividade de Log mostraO perfil de segurança do token vê menos fontes de logDê ao token um perfil que corresponda à investigação
Payloads parecem garranchos codificadosUTF8() deixado de fora da consultaSelecione UTF8(payload)
Status da pesquisa vai para ERROSintaxe AQLTeste a consulta na Pesquisa Avançada primeiro
Resultados estão vaziosA janela está fora da retenção, ou o fuso horário está erradoVerifique a retenção; verifique o fuso horário do console
curl reclama sobre o certificadoCertificado autoassinado do consoleUse –cacert com o CA do console

FAQ

Posso obter arquivos EVTX do QRadar?

Não. O QRadar armazena eventos do Windows como payloads de texto. Para arquivos EVTX reais, exporte-os do host do Windows.

E sobre dados de fluxo?

Os fluxos vivem em uma tabela separada: consulta de FROM flows ao invés de FROM events. Eles são registros de conexão de rede, não logs, e são uma análise separada.

Junte-se à plataforma Detection as Code da SOC Prime para melhorar a visibilidade das ameaças mais relevantes para o seu negócio. Para ajudá-lo a começar e gerar valor imediato, agende uma reunião agora com os especialistas da SOC Prime.