Generador de queries de hunting parametrizadas para los principales SIEM/EDR. Compón a partir de IOCs o de comportamiento (IOAs), elige plataforma y lookback, copia la query lista para tu consola.
Demo: https://osnolanarf.github.io/queryforge/
| Plataforma | Lenguaje | IOC Hunter | IOA Hunter |
|---|---|---|---|
| Microsoft Defender XDR | KQL | ✓ | ✓ — Process · Network · File · Registry |
| CrowdStrike Falcon | CSQL / LQL (LogScale, NG-SIEM) | ✓ | ✓ — ProcessRollup2 |
| Palo Alto Cortex XDR | XQL | ✓ | — |
IOC Hunter — pega una lista de IOCs (hashes, IPs o dominios, uno por línea). Se acepta defanging (1.2.3[.]4, hxxps://evil[.]com). El generador clasifica por tipo y produce queries idiomáticas para cada plataforma:
- KQL —
DeviceNetworkEvents/DeviceFileEvents. - LQL (CrowdStrike) —
setTimeInterval(start=X)+#event_simpleName+select([…]). - XQL (Cortex) — preset por tipo de IOC.
IOA Hunter — describe un comportamiento (proceso, padre, abuelo, línea de comandos, usuario, ruta, registry, archivo…) y obtén la query lista para tu consola. Soporta:
- Multi-tabla en KQL:
DeviceProcessEvents,DeviceNetworkEvents,DeviceFileEvents,DeviceRegistryEvents— selector segmented en el header. - Chips multi-select para
ActionTypeen File y Registry (valores cerrados comoFileCreated,RegistryValueSet). - Chip Y / O por campo — combina los filtros con AND por defecto; marca
Olos campos que quieras agrupar en un bloque alternativo (ej.URL O IP). - Toggle Cualquiera / Todos (
has_anyvshas_all) en los campos cmdline cuando hay 2+ valores. - Listas dinámicas inferidas: separa por coma para generar
let Lista = dynamic([...])(KQL) o alternancia regex (LQL). - Parser tolerante a comillas: encierra un valor entre
"…"para preservar espacios y comas literales (p.ej.cmdline = "c "con espacio final intencional). - Normalización de PowerShell automática a sus 4 binarios canónicos cuando el campo tiene un único valor PS.
- Plataforma seleccionable (Windows / Linux / macOS / Todas) en el hunter LQL.
- Header opcional con MITRE ATT&CK, hipótesis, descripción, falsos positivos y nivel de ruido — solo se imprime si hay metadata real.
Ambas herramientas: elige lookback y copia la query.
100 % en cliente. No hay backend ni telemetría. Los datos nunca salen del navegador.
HTML + CSS + Vanilla JS. Sin frameworks, sin build, sin dependencias remotas. Iconos Lucide servidos localmente.
Abre index.html directamente en el navegador. Para auto-reload usa cualquier servidor estático:
python3 -m http.server 8000
# o
npx serveMIT — ver LICENSE.