Pitangus

Bugs atrapados mientras lees: 0 bugs atrapados

EnglishCódigo

Lámina I·Pitangus sulphuratus

Vigila cada cambio.Demuestracada corrección.

Seguridad de aplicaciones autoalojada para equipos pequeños. Pitangus analiza tu código, tus dependencias y tus secretos, te dice qué introduce y qué corrige cada cambio, y guarda la evidencia que un auditor puede comprobar.

  • Código abierto · AGPL-3.0
  • Corre en tu servidor
  • Sin telemetría
Fig. 1 — Pitangus sulphuratus (Linnaeus, 1766)Hábitat: tus repositorios. Dieta: bugs.

Guía de campo

Cada bug, catalogado como un espécimen.

Siete motores abiertos en los que ya confías revisan tu código, dependencias, secretos, infraestructura e imágenes. Pitangus junta lo que encuentran, quita los duplicados y archiva cada hallazgo con dónde vive y cómo corregirlo.

Opengrep · Gitleaks · Trivy · OSV-Scanner · Grype · Checkov · zizmor

  1. № 01Código

    CWE-89

    Inyección SQL

    app/db.py:14

    La entrada de la petición llega a una consulta armada con texto.

  2. № 02Dependencia

    CVE-2021-23337

    lodash 4.17.15

    package-lock.json

    Actualiza a 4.18.0: cierra los seis avisos.

  3. № 03Secreto

    CWE-798

    Token de GitHub

    config/settings.py:3

    Revócalo primero. Su valor nunca sale de tu servidor.

  4. № 04Infraestructura

    CKV_AWS_20

    Bucket público

    infra/s3.tf:8

    Cualquiera podría listarlo. Bloquea el acceso público.

Pull requests

Solo lo que trae tu cambio. Y lo que corrige.

En CI, Pitangus analiza el punto de partida y tu cambio con los mismos motores, así que una pull request se juzga solo por lo que añade. También dice qué corrigió, y solo se lo atribuye si los dos análisis terminaron y el archivo cambió de verdad.

Un paso en tu workflow

- uses: actions/checkout@v4
  with: { fetch-depth: 0 }
- uses: Pitangus-Dev/pitangus@v0.12.0

La GitHub Action oficial usa la imagen publicada: sin compilar y sin socket de Docker.

$ pitangus scan --base main
Pitangus · api · cambios respecto a main (merge-base 4f2a9c1e, 1 archivo) Sin hallazgos nuevos. Corregido en este cambio (1): estaba en el punto de partida, ya no está y su archivo cambió.  ALTA     app/db.py:14  Inyección SQL desde la petición PASA · umbral: alta o superior · Sin hallazgos nuevos en el código que cambia

El registro

Corregido quiere decir verificado. No supuesto.

Cada hallazgo guarda su historia: cuándo apareció, quién lo revisó y por qué, su plazo según tu política y el análisis que demostró que ya no está. Las decisiones se registran, no se sobrescriben.

HallazgoEstadoPlazo
Inyección SQL · app/db.py:14Corregido20 oct
lodash 4.17.15 · 6 vulnerabilidadesAbierto30 oct
Bucket público · infra/s3.tfRiesgo aceptadoHasta el 1 dic
  • i

    Determinista

    El mismo código, con los mismos motores y los mismos datos de avisos, da el mismo resultado. Un auditor lo puede repetir.

  • ii

    Evidencia

    SBOM (CycloneDX), VEX (OpenVEX), informes de SLA y el rastro de cada decisión.

  • iii

    Honesto con lo que falta

    Si un motor falla, el análisis lo dice, y nada de lo que mira ese motor cuenta como corregido. Nunca se lee como «sin hallazgos».

Cualquier herramienta, un registro

Trae lo que encuentran otras herramientas.

Importa SARIF de cualquier escáner o revisor con IA. Sus hallazgos entran al mismo registro, con triage, plazos e incidencias. Solo una nueva importación completa de esa misma herramienta puede darlos por corregidos: cada herramienta responde por lo que mira.

  • SARIFSemgrep
  • SARIFCodeQL
  • SARIFSnyk
  • SARIFTrivy
  • SARIFGrype
  • SARIFBandit
  • SARIFESLint
  • SARIFStrix
  • SARIFCualquier SARIF 2.1.0

Jira

Incidencias con las que un desarrollador puede trabajar.

Cada repositorio manda sus incidencias al proyecto que le toca, con tus campos personalizados. Dicen qué pasa, dónde, cómo corregirlo, cómo comprobarlo y para cuándo. Cuando la corrección se verifica, Pitangus lo comenta en la incidencia.

SEC-142

Alta: actualizar lodash 4.17.15 a 4.18.0 (6 vulnerabilidades)

El problema
lodash 4.17.15 tiene 6 vulnerabilidades conocidas. La versión 4.18.0 las corrige todas.
Dónde
acme/web · package-lock.json
Cómo corregirlo
npm install lodash@4.18.0
Plazo de corrección
30 oct, según tu política de seguridad
VERIFICADO

Pitangus verificó la corrección en el análisis 9f3c… del 2 oct.

Tuyo

Corre en tu servidor. Habla tu idioma.

  • i

    Autoalojado

    Un servidor con Docker y 4 GB de memoria. Tu código y tus hallazgos se quedan contigo.

  • ii

    Código abierto

    AGPL-3.0. Lee cada línea, cámbiala y úsala sin pedir permiso.

  • iii

    Español e inglés

    Escrito para cada idioma, no traducido a máquina. Informes, comentarios de PR e incidencias incluidos.

  • iv

    Sin telemetría

    No llama a casa. Solo sale a buscar avisos públicos y, si los conectas, a GitHub y Jira.

Instalar

Cinco minutos, un servidor.

  1. 1Necesitas Docker, make y git.

  2. 2Arráncalo y abre el panel.

    git clone --branch v0.12.0 https://github.com/Pitangus-Dev/pitangus.git
    cd pitangus
    make setup PREBUILT=1
    make up
  3. 3O añade la Action a tu workflow.

    - uses: Pitangus-Dev/pitangus@v0.12.0

Leer la documentación Libre y de código abierto (AGPL-3.0). Corre en tu servidor: sin cuenta y sin telemetría.