Ojo interior: Cómo el escáner de ColibriSec encuentra vulnerabilidades, secretos y misconfiguraciones

Bajo la capucha del motor de dependencia cero de ojo: manifiesta parsing, búsquedas SAST de árbol, flujo de paquete OS y bases de datos de vulnerabilidad offline.

Ojo interior: Cómo el escáner de ColibriSec encuentra vulnerabilidades, secretos y misconfiguraciones

Una profunda inmersión en la arquitectura de ingeniería detrás ojo: cómo nuestro motor de cero-dependencia se manifiesta a través de 10 ecosistemas de paquetes, ejecuta las consultas AST de Tree-sitter, y realiza la vulnerabilidad offline que coincide con un solo binario static Go.

🛠️
Principios de Arquitectura: Implementaciones nativas: Hand-crafted manifest parsers and secret engines rather than wrapping third-party CLI wrappers. Embedded Tree-sitter " go/ast: High-speed semantic AST traversal across Go, Python, JavaScript, TypeScript, PHP, Ruby, and Java. Base de datos: Embedded vulnerability advisory snapshots with optional air-gapped updates.

Arquitectura básica

ojo se construye como un único, auto-contenido Ir binario sin dependencias de tiempo de ejecución. En lugar de invocar daemons externos o envolver Node/Python runtimes, posee toda su tubería de escaneo:

┌───────────────────────────────────────────────────────────┐
│                     ojo CLI Runner                        │
│            ojo fs <path>    │    ojo image <ref>          │
└─────────────┬───────────────────────────────┬─────────────┘
              ▼                               ▼
┌─────────────────────────────┐ ┌───────────────────────────┐
│   Source & Manifest Engine   │ │     OCI Registry Client   │
│ • 10 Ecosystem Parsers      │ │ • Direct Layer Streaming  │
│ • Tree-sitter SAST Rules    │ │ • apk / dpkg DB Extractor │
│ • Secret Entropy Heuristics │ └─────────────┬─────────────┘
│ • IaC Policy Engine         │               │
└─────────────┬───────────────┘               │
              ▼                               ▼
┌───────────────────────────────────────────────────────────┐
│                 Vulnerability Matching Core               │
│         Advisory Graph + Semantic Version Resolution      │
└───────────────────────────────────────────────────────────┘

Motor SAST basado en el ST

A diferencia de simples linderos de regex que generan falsos positivos masivos, ojo compila árboles de sintaxis directamente:

  • Para Vamos.: Usa la biblioteca estándar nativa de Go go/ast y go/parser para la inspección de código estructural de cero cabeza.
  • Para Python, JS/TS, Java, PHP, Ruby: Embeds Árboles de gramática C para construir árboles de sintaxis y evaluar patrones de búsqueda de seguridad.

Empieza con ojo

ojo está disponible bajo la licencia Apache 2.0. Visita colibrisec.dev para documentación, guías de instalación y ejemplos de integración CI/CD GitHub Action.