Investigación

Investigación de seguridad

Divulgación responsable

Nueve hallazgos reportados a las organizaciones afectadas

  1. Suricata (OISF)

    Advisory público GHSA-prqx-q74v-wxhv.

    Verificado

    SIP parser u16 truncation (CVE-2026-63449)

    Message bodies larger than 65,535 bytes evade detection with the frame keyword because the SIP parser stores body length in a 16-bit field (CWE-197). Accepted and fixed by the Open Information Security Foundation in Suricata 8.0.6. Severity: Low (CVSS 3.7).

    Ver advisory en GitHub
  2. Dstny

    DSTNY-3RG1KAVE en Intigriti. Requiere cuenta en la plataforma.

    Production source maps exposure

    1,772 TypeScript source files exposed across 6 production domains. Accepted and remediated by Dstny security team.

  3. Škoda Auto

    Confirmación por correo de Škoda AUTO CERT, disponible a solicitud.

    3 active subdomain takeovers

    Three subdomains serving gambling content under official Škoda domains. Remediated by Škoda AUTO CERT.

  4. Shopify

    HackerOne #3739586. Requiere cuenta en la plataforma.

    SSO gateway parameter validation gap

    Missing rd parameter validation on internal SSO gateway (minerva.shopifycloud.com) with potential blast radius to banking and payment internal services.

  5. Tienda en línea de artículos para bebé

    Hardcoded bearer tokens in public JavaScript

    CVSS 10.0. Bearer tokens granting unauthenticated access to Shopify Admin API including GDPR consent modification. Reported via responsible disclosure.

  6. navikt/cplt#180

    Corregido y publicado. El mantenedor abrió #389 y #390 a partir del reporte.

    Landlock no media stat(2) ni faccessat(2), así que access(R_OK) reporta como legible un archivo que open(2) va a denegar. Todo cargador de configuración que verifica antes de abrir recibe una contradicción del kernel.

    Ver issue en GitHub
  7. nolabs-ai/nono#1796

    Abierto.

    El diagnóstico reporta que no hubo denegaciones en fallos causados por el propio sandbox. En Linux el backend de Landlock no registra ninguna a ninguna profundidad.

    Ver issue en GitHub
  8. modelcontextprotocol/python-sdk#3309

    La medición se citó en la rama de documentación propuesta para el issue. Cerrado como «not planned» el 1 de octubre de 2026; el equipo del SDK dejó dicho ahí que 1.x está congelado salvo correcciones críticas y de seguridad, que la guía para los autores de paquetes es mcp>=2,<3 y que no habrá página de transición.

    Entre un quinto y un tercio de los servidores MCP de PyPI listados en el registro oficial no arrancan en una instalación limpia por el renombre de FastMCP en la versión 2.0 del SDK, 45 días después de publicada; con otro cambio de esa versión, al menos el 35 %. 71 de los paquetes declaran una versión mínima sin máxima; ninguno arrancó.

    Ver issue en GitHub
  9. zed-industries/extensions#7640

    Abierto.

    El campo repository del manifiesto se copia a la API y a la página de la extensión sin validar. 5 de 73 extensiones de context server apuntan a otro sitio.

    Ver issue en GitHub

Cadena de suministro npm

Mediciones propias

Se presenta como investigación, no como producto: el paquete norte-guard publicado en npm es el instrumento con el que se hicieron las mediciones M01 a M05; M06 y M07 aplican su método; M08 lee lockfiles y el registro de npm sin instalar nada; M09 lee los go.mod de proyectos de Go por el proxy sin compilar nada, y M10, el Cargo.lock de nono y el registro de crates.io. Los reportes en navikt/cplt y nolabs-ai/nono salieron de las primeras; los de modelcontextprotocol/python-sdk y zed-industries/extensions, de las segundas. Cada fila dice si la medición está publicada en una nota técnica o solo en su repositorio de datos.

Malware y sandboxes de instalación en npm

  1. Efecto de diseño en el corpus de malware npm de DataDog: 1,443 versiones cargan solo 56 firmas de payload byte-idénticas. Efecto de diseño de 25.8, cota inferior. Una tasa calculada sobre ese corpus tiene un tamaño efectivo de muestra cercano a 56, no a 1,001.

    Sin publicar
  2. Matriz de compatibilidad de sandboxes de instalación para cuatro gestores de paquetes: qué rutas de $HOME necesita un npm install, medido con strace.

    Sin publicar
  3. 23 % de los paquetes nuevos de npm son ilegibles para análisis estático (intervalo de confianza de 21 a 25 %, n = 1,593).

    Sin publicar
  4. 30 de 30 clusters de malware de 2025 son detectables por inspección de contenido; 13 de 13 de 2026 no lo son, por cifrado. Sin traslape.

    Sin publicar
  5. Las cifras de tipo «N % cifra» obtenidas por coincidencia de patrones son cotas inferiores, no medidas exactas.

    Sin publicar

Instalación y primer arranque de servidores MCP y plugins de asistentes de código

  1. Servidores MCP: 600 celdas, 420 npm y 180 PyPI, muestra aleatoria con semilla del registro oficial.

    Publicada
  2. Plugins de asistentes de código: 618 celdas, cuatro registros sin muestreo: ACP, Cursor Marketplace, Devin marketplace y extensiones de Zed.

    Publicada

Publishers detrás de un npm install

  1. Repositorios de GitHub en JavaScript o TypeScript: 892 lockfiles, muestra aleatoria con semilla de los 38,791 con 100 estrellas o más y push en los últimos doce meses; 88,376 versiones resueltas, leídas del registro de npm sin instalar ninguna.

    Publicada

Dueños detrás de un go build

  1. Repositorios de GitHub en Go: 360 proyectos resueltos, muestra aleatoria con semilla de los 11,015 con 100 estrellas o más y push en los últimos doce meses; los go.mod de cada grafo, leídos del proxy sin compilar nada.

    Publicada

Publishers detrás del build de un sandbox

  1. El Cargo.lock de nono en el commit 121bf37: 548 versiones de 501 crates, y quién publicó cada una según crates.io. Un proyecto, no una muestra.

    Publicada