Databricks descubre que los LLM no detectan malware oculto en archivos binarios de npm
Databricks Threat Research afirma que los LLM suelen no detectar malware de npm oculto en binarios compilados, y que inyectar evidencia estructurada sobre amenazas en los prompts permite recuperar la mayoría de las detecciones que se habían pasado por alto.
Respuesta rápida
¿Qué descubrió el equipo de investigación de Databricks sobre la capacidad de los LLM para detectar malware oculto en binarios de paquetes npm?
Databricks Threat Research afirma que los LLM utilizados para clasificar paquetes de npm suelen pasar por alto el malware oculto en binarios compilados, fallando por completo en la mitad de sus pruebas de nivel básico. La compañía señala que inyectar en las indicaciones evidencia estructurada en forma de "perfil de capacidades" antes de que los modelos razonen permitió recuperar el 91% de esos fallos en los modelos evaluados.
Claves
- Según Databricks Threat Research, los paquetes de npm que incluyen binarios compilados eluden veredictos definitivos de malware con una frecuencia más del doble que los paquetes que ocultan código malicioso en código fuente visible (14,4 % frente a 6,2 %, según el conteo de la compañía).
- Databricks probó nueve LLM de siete proveedores y descubrió que su nivel económico de siete modelos falló en 35 de 70 pruebas de detección de malware sin orientación adicional, incluidos 20 paquetes calificados como totalmente benignos.
- El sistema de "perfil de capacidades" de la compañía inyecta aproximadamente 1.800 tokens de evidencia estructurada de análisis estático en el prompt de un modelo antes de que este emita un veredicto, y Databricks afirma que esto resolvió 32 de los 35 fallos originales en el nivel de presupuesto.
- En una de las pruebas que describe Databricks, Qwen3-Next 80B calificó un paquete ofuscado de robo de credenciales como "benigno" con un 98% de confianza sin la evidencia adicional, y luego calificó el mismo paquete como "malicioso" con un 98% de confianza una vez aplicados los perfiles de capacidad.
- Databricks afirma que GPT-5.4-nano siguió siendo el modelo con peor desempeño incluso con la incorporación de perfiles de capacidad, sin lograr un veredicto de malicioso en tres de los diez payloads de prueba.
Lo que descubrió Databricks
Databricks Threat Research afirma que ha estado recopilando muestras de malware del registro de paquetes npm desde noviembre de 2025. De las 11.413 versiones de paquetes que analizó y corroboró con los avisos de malware de npm de OSV, la compañía señala que el 96,2% ocultaba su carga maliciosa directamente en el código fuente o la obtenía de un servidor externo. El 3,8% restante, es decir, 432 versiones de paquetes, incluía en cambio un binario compilado.
Según Databricks, los paquetes que contienen binarios son más difíciles de clasificar, aunque sean menos frecuentes. La compañía indica que, en el conjunto de malware de npm confirmado por OSV, los paquetes que incluían un binario no lograron un veredicto malicioso concluyente con una frecuencia más del doble que los paquetes basados solo en código fuente: 14,4% frente a 6,2%.
Cómo se diseñó la prueba
Databricks construyó un escáner que monitorea el registro de npm en tiempo real, ejecutando YARA y Semgrep sobre el código y los metadatos de los paquetes junto con un módulo de análisis binario, antes de pasar las pruebas reunidas a un LLM para que emita un veredicto.
Para poner a prueba específicamente la detección basada en binarios, los investigadores crearon cinco tipos de paquetes adversariales construidos como complementos nativos de Node.js: un paquete de robo de credenciales llamado sysmon-native, un dropper/backdoor llamado buildchain-native, una shell inversa llamada netpulse-native, un stub de criptominería llamado hashworker-native y un mecanismo de persistencia llamado taskd-native. Cada uno se empaquetó con un package.json, un README y enlaces de JavaScript de apariencia profesional.
Databricks probó nueve modelos de siete proveedores: un nivel "económico" de siete modelos que, según afirma, los equipos desplegarían realmente a gran escala, además de dos modelos de mayor capacidad, Claude Sonnet 4.6 y Kimi K3, utilizados como referencias de comportamiento, y Claude Opus 4.6, incluido únicamente como referencia de costo.
Resultados
| Modelo | Sin perfiles | Con perfiles |
|---|---|---|
| GPT-5.4-nano | 0/10 | 7/10 |
| Qwen3-Next 80B | 1/10 | 10/10 |
| Llama 3.1 8B | 4/10 | 10/10 |
| Gemma 3 12B | 5/10 | 10/10 |
| Claude Haiku 4.5 | 6/10 | 10/10 |
| GLM 5.3 Flash | 9/10 | 10/10 |
| Gemini 3.5 Flash | 10/10 | 10/10 |
Sin orientación adicional, Databricks señala que el nivel económico falló en 35 de 70 pruebas de detección (50%), incluidos 20 casos en los que un modelo calificó el malware como directamente benigno, y no alcanzó un veredicto de "malicioso" en 51 de 70 pruebas (73%). Los dos modelos de referencia no fallaron en el umbral de detección y solo se quedaron cortos en el veredicto malicioso una vez, según la compañía.
Databricks afirma haber resuelto esto con lo que denomina "perfiles de capacidad": guías declarativas que puntúan las pruebas del análisis estático frente a umbrales vinculados a una técnica maliciosa específica, como la recolección de credenciales o la persistencia. Cuando se alcanza un umbral, el sistema inyecta en el prompt del modelo un resumen estructurado de aproximadamente 1.800 tokens antes de que este razone, aunque el modelo todavía puede anular las conclusiones del perfil.
Con los perfiles añadidos, Databricks indica que 32 de los 35 fallos originales (91%) se convirtieron en detecciones correctas, y que ningún modelo emitió un veredicto benigno sobre ninguna de las cargas probadas. Los fallos en el umbral de detección en todo el nivel económico cayeron del 50% al 4% (3 de 70 pruebas), y las carencias en el umbral de malicioso bajaron del 73% al 34%. Los tres fallos restantes de GPT-5.4-nano quedaron clasificados como "sospechoso" en lugar de benigno.
La compañía destacó un caso en detalle: Qwen3-Next 80B calificó una versión ofuscada del paquete de robo de credenciales sysmon-native como benigna con un 98% de confianza y recomendó incluirla en la lista de permitidos cuando no se aplicaba ningún perfil. Sobre el mismo paquete, una vez que se activaron cuatro perfiles de capacidad, ese mismo modelo lo calificó como malicioso con un 98% de confianza y recomendó bloquearlo.
Preguntas frecuentes
- ¿Qué problema abordó la investigación de Databricks?
- Databricks Threat Research analizó por qué los LLM utilizados para evaluar paquetes npm potencialmente maliciosos suelen no detectar malware oculto dentro de archivos binarios compilados en lugar de en el código fuente visible.
- ¿Cuántos modelos probó Databricks y qué ocurrió sin orientación adicional?
- Databricks probó nueve modelos de siete proveedores. Sin orientación adicional, su nivel económico de siete modelos falló en 35 de 70 pruebas de detección, incluidos 20 casos calificados como claramente benignos, según la empresa.
- ¿Qué es un perfil de capacidad, según Databricks?
- Databricks lo describe como un manual declarativo que puntúa las evidencias de un análisis estático frente a umbrales vinculados a una técnica maliciosa específica, e inyecta un resumen estructurado de aproximadamente 1.800 tokens en el prompt del modelo cuando se alcanza un umbral.
- ¿Los perfiles de capacidad corrigieron todos los fallos de detección que encontró Databricks?
- No. Databricks afirma que los perfiles resolvieron 32 de los 35 fallos del nivel de presupuesto, pero GPT-5.4-nano siguió devolviendo veredictos de sospechoso en lugar de malicioso en tres de sus diez payloads de prueba.