Ir al contenido principal

StaticCodeAudit

Changelog

Todas las funcionalidades, mejoras e hitos de cada versión de StaticCodeAudit.

Lo que entregamos, lo que entregamos a continuación

Snapshot honesto del estado del producto. « Hecho » está en producción. « En curso » se está construyendo ahora. « Por venir » está planeado pero no iniciado — fechas indicativas.

Hecho — entregado

  • Cobertura estándar 100 %: 697/697 reglas builtin mapeadas a CWE o WCAG (665 + 32)
  • DSL extendido: multi-CWE por regla, campo CVE, campo WCAG — todo propagado a JSON / SARIF / HTML
  • SARIF rule.properties.tags + objeto JSON finding.compliance — compatible con GitHub code-scanning, DefectDojo, plataformas ASOC
  • Loader de paquetes fuera de banda (rules-updates/) con verificación SHA-256 y spec manifest.json fijada
  • D.2 Rendimiento: caché de reglas + análisis incremental (3× más rápido en caché caliente)
  • Motor taint: Python AST + JS/Java/C#/PHP léxico, detección multi-flow, control de compatibilidad de kind

En curso — en construcción

  • Pipeline de inteligencia CVE: ingesta diaria de feeds NVD / OSV / GitHub Advisory, filtrado por lenguajes soportados
  • Consola de authoring del operador: escribir una regla .sca, validar contra fixtures en sandbox, preparar para release
  • Portal de cliente: descarga autenticada de paquetes de reglas (por nivel de suscripción)
  • Notificaciones email: alertar a los suscriptores activos cuando se publica un nuevo paquete

Por venir — planeado

  • DSL v2: verificación de firma Ed25519 en tiempo de carga (clave pública embebida en el binario en build)
  • D.2.3 finalizar: paralelización real (refactor de ejecutores para thread-safety)
  • Lenguajes adicionales: Go, Ruby, Kotlin, Swift — según demanda del cliente
  • Motor taint: sanitizadores cross-line / scope-level (actualmente solo RHS)
  • Plugins IDE: VS Code + JetBrains (visualizador de findings read-only, lee el último JSON de auditoría)

Sin compromisos de fechas. Entregamos cuando está listo. Prioridades guiadas por el cliente — díganos qué le importa más.

Historial de versiones

v1.4.0 Nuevo Mayo 2026

Motor taint dataflow Fase 7/8 (F1 = 1,000 en Python Y multilingüe JS/Java/C#/PHP) más 3 reglas supply-chain inspiradas en el ataque npm TanStack/Mistral (mayo 2026, 170 paquetes comprometidos). Eliminación del motor taint legacy (-3 519 LOC neto). Total: 700+ reglas en 8 categorías.

Motor dataflow taint (Fase 7/8)

  • Implementación clean-room — CFG, IR 3-direcciones, retículo y worklist con matching híbrido dotted + regex (~6 200 LOC código, 3 800 LOC tests)
  • F1 = 1,000 en el corpus interno de fixtures SCA — cero falsos negativos, cero falsos positivos, en Python Y multilingüe (JS/Java/C#/PHP)
  • Profile loader (Flask, Django, Express, Spring, Laravel, .NET) inyectado automáticamente en las reglas taint por categoría — misma precisión que Snyk Code, sin nube ni dependencia externa

Cobertura supply-chain (TanStack/Mistral mayo 2026)

  • Regla npm_git_dependency — detecta dependencias fijadas a un commit Git GitHub/GitLab/Bitbucket, que eluden las advisories del registro npm
  • Reglas ide_config_exfil (JS + Python) — detectan escrituras silenciosas en .claude/settings.json, .vscode/tasks.json, .cursor/, .aider/, .codeium/ usadas como vectores de persistencia
  • Cobertura preventiva nativa — sin telemetría, sin sandbox en la nube, cada detección se ejecuta sin conexión en la máquina del desarrollador
v1.3.0 Nuevo Mayo 2026

D.2 Rendimiento — caché de reglas y análisis incremental hacen los escaneos en caliente hasta 3× más rápidos, ideal para pipelines CI/CD y hooks pre-commit.

Rendimiento

  • Caché de reglas: reglas DSL parseadas una sola vez, conservadas entre ejecuciones
  • Análisis incremental: solo se reanalizan los archivos modificados desde el último escaneo (hash de contenido)
  • Hasta 3× más rápido en escaneos en caliente (re-escaneos de código sin cambios)
v1.2.0 Mejorado Abril 2026

+53 reglas de detección para categorías no relacionadas con seguridad: Arquitectura, Mantenimiento, Accesibilidad/UX, Interfaz/UI. Basado en axe-core (WCAG 2.2), Ruff, Pylint, PMD, PHPMD, SonarJS, eslint-plugin-jsx-a11y, HTMLHint y SonarQube Cloud API.

Nuevas reglas — 8 oleadas

  • +16 reglas UX/accesibilidad (HTML + JSX): axe-core WCAG 2.0/2.1/2.2, aria-hidden, zoom viewport, subtítulos de video, jsx-a11y
  • +6 reglas UI (HTML): etiquetas obsoletas, estilos en línea, viewport ausente, tipo de botón, target blank, dimensiones de imagen
  • +24 reglas de Mantenimiento: Python (Ruff/Pylint), Java (PMD), PHP (PHPMD), JavaScript (SonarJS), C# (SonarQube)
  • +7 reglas de Arquitectura: Java, PHP, JavaScript, C# — acoplamiento, clases utilitarias, campos públicos
  • 698 reglas en total (frente a 645 anteriores)
v1.1.0 Motor 2026 — Actual

Detección y Cobertura

  • 698 reglas de detección en 7 categorías
  • 8 lenguajes: Python, JavaScript/TypeScript, HTML, Java, C#, PHP, YAML
  • changelog.v2.detection.custom--create-rule) with DSL and taint propagation
  • changelog.v2.detection.fixtures
  • changelog.v2.detection.selftest--self-test) validates all fixtures on demand

Seguridad

  • changelog.v2.security.owasp
  • changelog.v2.security.iso27001
  • changelog.v2.security.asvs
  • changelog.v2.security.cicd
  • changelog.v2.security.suppress# sca-ignore), config, or global disable

Exportaciones e Integración

  • Exportación SARIF 2.1.0 para GitHub Code Scanning y GitLab SAST--sarif) — compatible with GitHub Code Scanning and GitLab SAST
  • Generación SBOM en formato CycloneDX 1.5--sbom) — Software Bill of Materials
  • changelog.v2.exports.gitblame--git-blame) — committer per finding
  • changelog.v2.exports.hook--install-hook) — automatic audit before every commit
  • changelog.v2.exports.failon--fail-on-high) — exit code 1 on HIGH findings

Informes y Marca blanca

  • Informes en 4 idiomas: inglés, francés, español, alemán
  • changelog.v2.reports.charts
  • changelog.v2.reports.health
  • changelog.v2.reports.glossary
  • Marca blanca: nombre de herramienta, empresa, logo y prefijo personalizables
  • Retención de informes por cantidad, días o modo combinado--retention-dry-run)
  • changelog.v2.reports.keyboard
  • changelog.v2.reports.print
v1.0.0 Inicial 2025 — Versión inicial

Funcionalidades principales

  • 51 reglas de detección en 7 categorías
  • 4 lenguajes: Python, JavaScript/TypeScript, HTML
  • changelog.v1.core.reports
  • Comparación baseline entre snapshots de auditoría
  • changelog.v1.core.zero
  • changelog.v1.core.offline
  • changelog.v1.core.uuid--init)

Categorías opcionales

  • Auditoría de dependencias con pip-audit y npm audit (escaneo CVE)
  • changelog.v1.optional.db