Seules les vulnérabilités qui comptent, corrigées par une pull request

Scandar lit vos lockfiles, garde les problèmes que votre code peut réellement atteindre, les explique simplement et ouvre une pull request à relire.

Rejoindre la bêta
Ouverte
fix(deps): patch 6 vulnerabilities #12

main ← scandar/fix-web

GitHub
  1. Pull request de correction ouverte

    Mises à jour des dépendances commitées sur scandar/fix-web.

  2. Vérifications

    Les 3 vérifications ont réussi

  3. Fusion dans main

    Prête à fusionner. Scandar la fusionne en squash et supprime la branche.

Fermer la PRFusionner en squash
En retard
2
Bientôt dus
5
Dans les temps
9
Exploitées activement
1
  • CritiqueminimatchExploitéeacme/web2 jours de retard
  • Élevéesemveracme/billing1 jour de retard
  • Élevéebracesacme/docsdans 2 jours
  • Modéréepostcssacme/apidans 4 jours
  • Élevéewsacme/apidans 5 jours
  • Faiblecookieacme/docsdans 6 jours
  • Modéréefollow-redirectsacme/billingdans 6 jours
Délai de résolution
2 jours
PR de correction fusionnées (30 jours)
9
Délai de fusion d'un correctif
3 h
Écosystèmes
8

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

Sources
4

GitHub, GitLab, URL publique, envoi de lockfile

Alertes
OSV.dev

GitHub, PyPA, Go, RustSec, RubySec…

Pushs sur main
0

Chaque correctif est une pull request

Comment ça marche

Du lockfile au correctif fusionné en trois étapes.

  1. 01

    Connectez votre code

    Installez la GitHub App sur les dépôts choisis, reliez GitLab, collez une URL publique ou déposez vos lockfiles.

  2. 02

    Voyez ce qui compte

    Chaque dépendance est vérifiée sur OSV.dev, puis classée par sévérité, atteignabilité depuis vos imports et existence d'un correctif.

  3. 03

    Fusionnez le correctif

    Scandar ouvre une pull request qui passe chaque paquet à sa version corrigée. Votre CI tourne, vous fusionnez.

Une pull request, pas une liste de tâches

acme/web

Exemple de pull request. Les paquets et identifiants sont inventés.

Exemple

Correctifs de dépendances générés par Scandar à partir des alertes OSV.dev.

PaquetDeVersTypeCorrige
minimatch3.0.43.1.2direct (package.json)EXAMPLE-001
brace-expansion1.1.111.1.12overrides (transitif)EXAMPLE-002

package-lock.json a été recalculé avec npm install. Aucune alerte connue ne subsiste après ce changement. Lancez vos tests avant de fusionner, surtout pour les changements marqués majeur ou override.

En termes simples

minimatch 3.0.4 → 3.1.2 · EXAMPLE-001

  • Ce que cela permet : Un attaquant qui contrôle le texte comparé peut occuper le processus au point de bloquer la requête. Cette phrase est une illustration, pas une alerte.
  • Quand vous êtes exposé : Seulement si l'application transmet au paquet des entrées non fiables. L'exemple ne décrit pas un vrai projet.
  • Mise à jour : L'exemple passe une dépendance directe à une version 3.x ultérieure. Lisez les notes de version avant de fusionner.

Les plages directes passent à la version corrigée, les paquets transitifs sont épinglés par des overrides et le lockfile est régénéré.

La description nomme chaque paquet et, si une explication est déjà en cache, dit ce que cela signifie en termes simples.

Comment un correctif est construit

Fonctionnalités

Tout ce qui aide à décider quoi corriger, puis à le corriger.

Atteignabilité

Distingue les paquets importés de ceux que votre code n'atteint jamais : le bruit baisse.

À corriger, à planifier, plus tard

Un score de priorité par vulnérabilité, pas un mur de badges rouges.

Paquets malveillants

Les paquets signalés comme malveillants sur OSV apparaissent en premier, avec la version à retirer.

Explications simples

Ce qu'une alerte signifie pour votre projet et ce que la mise à jour change, en quelques phrases.

Vérifications de pull request

Une vérification sur chaque pull request, en échec si elle ajoute une alerte critique ou élevée.

Alertes

Des analyses en arrière-plan, avec des alertes Slack, Discord et dans l'app à chaque nouvelle alerte.

Plusieurs PR de correction

Plusieurs correctifs par projet, jamais deux fois le même paquet, jamais de push sur main.

Exports

SBOM CycloneDX et SPDX, CSV, rapport imprimable et badge README.

Comparer

Scandar face à Dependabot, Snyk, Socket et Aikido, d'après ce que chacun publie.

Questions

Corrigez les vulnérabilités qui comptent, dès aujourd'hui

Analysez un dépôt public sans compte, ou connectez-vous pour ouvrir une pull request sur votre code.