Solo le vulnerabilità che contano, corrette con una pull request

Scandar legge i tuoi lockfile, tiene i problemi che il tuo codice può davvero raggiungere, li spiega in parole semplici e apre una pull request da rivedere.

Unisciti alla beta
Aperta
fix(deps): patch 6 vulnerabilities #12

main ← scandar/fix-web

GitHub
  1. Pull request di correzione aperta

    Aggiornamenti delle dipendenze committati su scandar/fix-web.

  2. Controlli

    Tutti e 3 i controlli superati

  3. Unione in main

    Pronta da unire. Scandar la unisce con squash ed elimina il branch.

Chiudi PRSquash e unisci
In ritardo
2
In scadenza
5
In regola
9
Sfruttati attivamente
1
  • CriticaminimatchSfruttatoacme/web2 giorni di ritardo
  • Altasemveracme/billing1 giorno di ritardo
  • Altabracesacme/docstra 2 giorni
  • Moderatapostcssacme/apitra 4 giorni
  • Altawsacme/apitra 5 giorni
  • Bassacookieacme/docstra 6 giorni
  • Moderatafollow-redirectsacme/billingtra 6 giorni
Tempo di risoluzione
2 giorni
PR di correzione unite (30 giorni)
9
Tempo per unire una correzione
3 h
Ecosistemi
8

npm, pnpm, Yarn, PyPI, Go, Cargo, Composer, RubyGems

Fonti
4

GitHub, GitLab, URL pubblico, caricamento lockfile

Avvisi
OSV.dev

GitHub, PyPA, Go, RustSec, RubySec…

Push su main
0

Ogni correzione è una pull request

Come funziona

Dal lockfile alla correzione unita in tre passaggi.

  1. 01

    Collega il tuo codice

    Installa la GitHub App sui repository scelti, collega GitLab, incolla un URL pubblico o trascina i lockfile.

  2. 02

    Vedi ciò che conta

    Ogni dipendenza è verificata su OSV.dev, poi ordinata per gravità, raggiungibilità dai tuoi import e disponibilità di una correzione.

  3. 03

    Unisci la correzione

    Scandar apre una pull request che porta ogni pacchetto alla versione corretta. La CI gira, tu unisci.

Una pull request, non una lista di cose da fare

acme/web

Pull request di esempio. Pacchetti e id sono inventati.

Esempio

Correzioni delle dipendenze generate da Scandar dagli avvisi OSV.dev.

PacchettoDaATipoCorregge
minimatch3.0.43.1.2diretto (package.json)EXAMPLE-001
brace-expansion1.1.111.1.12override (transitivo)EXAMPLE-002

package-lock.json è stato risolto di nuovo con npm install. Dopo questa modifica non restano avvisi noti. Esegui i test prima di unire, soprattutto per le modifiche segnate major o override.

In parole semplici

minimatch 3.0.4 → 3.1.2 · EXAMPLE-001

  • Cosa consente: Un attaccante che controlla il testo confrontato può far durare il processo così a lungo da bloccare la richiesta. Questa frase è un'illustrazione, non un avviso.
  • Quando sei esposto: Solo se l'applicazione passa al pacchetto input non attendibili. L'esempio non descrive un progetto reale.
  • Aggiornamento: L'esempio porta una dipendenza diretta a una release 3.x successiva. Leggi le note di rilascio prima di unire.

Gli intervalli diretti passano alla versione corretta, i pacchetti transitivi sono fissati con override e il lockfile viene rigenerato.

La descrizione nomina ogni pacchetto e, se una spiegazione è già in cache, dice cosa significa in parole semplici.

Come nasce una correzione

Funzionalità

Tutto ciò che aiuta a decidere cosa correggere, e poi a correggerlo.

Raggiungibilità

Distingue i pacchetti importati da quelli che il codice non raggiunge, così il rumore cala.

Subito, da pianificare, più tardi

Un punteggio di priorità per vulnerabilità, non un muro di badge rossi.

Pacchetti malevoli

I pacchetti segnalati come malware su OSV appaiono per primi, con la versione da rimuovere.

Spiegazioni semplici

Cosa significa un avviso per il tuo progetto e cosa cambia aggiornando, in poche frasi.

Controlli sulle pull request

Un controllo su ogni pull request che fallisce se aggiunge un avviso critico o alto.

Avvisi

Nuove scansioni in background, con avvisi Slack, Discord e in-app quando arriva un nuovo avviso.

Più PR di correzione

Più correzioni per progetto, mai lo stesso pacchetto due volte, mai un push su main.

Esportazioni

SBOM CycloneDX e SPDX, CSV, report stampabile e badge per il README.

Confronta

Scandar accanto a Dependabot, Snyk, Socket e Aikido, in base a ciò che ognuno pubblica.

Domande

Correggi oggi le vulnerabilità che contano

Scansiona un repository pubblico senza account, o accedi per aprire una pull request sul tuo codice.