Nur die Schwachstellen, die zählen, behoben mit einem Pull Request

Scandar liest deine Lockfiles, behält die Probleme, die dein Code wirklich erreicht, erklärt sie einfach und öffnet einen Pull Request zum Prüfen.

An der Beta teilnehmen
Offen
fix(deps): patch 6 vulnerabilities #12

main ← scandar/fix-web

GitHub
  1. Fix-Pull-Request geöffnet

    Abhängigkeits-Updates auf scandar/fix-web committet.

  2. Checks

    Alle 3 Checks bestanden

  3. Merge in main

    Bereit zum Mergen. Scandar macht einen Squash-Merge und löscht den Branch.

PR schließenSquash und Merge
Überfällig
2
Bald fällig
5
Im Plan
9
Aktiv ausgenutzt
1
  • KritischminimatchAusgenutztacme/web2 Tage zu spät
  • Hochsemveracme/billing1 Tag zu spät
  • Hochbracesacme/docsfällig in 2 Tagen
  • Mittelpostcssacme/apifällig in 4 Tagen
  • Hochwsacme/apifällig in 5 Tagen
  • Niedrigcookieacme/docsfällig in 6 Tagen
  • Mittelfollow-redirectsacme/billingfällig in 6 Tagen
Zeit bis zur Lösung
2 Tage
Gemergte Fix-PRs (30 Tage)
9
Zeit bis zum Merge eines Fixes
3 Std.
Ökosysteme
8

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

Quellen
4

GitHub, GitLab, öffentliche URL, Lockfile-Upload

Advisories
OSV.dev

GitHub, PyPA, Go, RustSec, RubySec…

Pushes auf main
0

Jeder Fix ist ein Pull Request

So funktioniert es

Von der Lockfile zum gemergten Fix in drei Schritten.

  1. 01

    Verbinde deinen Code

    Installiere die GitHub App auf den gewählten Repositories, verknüpfe GitLab, füge eine öffentliche URL ein oder lade deine Lockfiles hoch.

  2. 02

    Sieh, was zählt

    Jede Abhängigkeit wird auf OSV.dev geprüft und nach Schweregrad, Erreichbarkeit aus deinen Imports und verfügbarem Fix sortiert.

  3. 03

    Merge den Fix

    Scandar öffnet einen Pull Request, der jedes Paket auf die gepatchte Version hebt. Deine CI läuft, du mergst.

Ein Pull Request, keine To-do-Liste

acme/web

Beispiel-Pull-Request. Pakete und IDs sind erfunden.

Beispiel

Automatische Abhängigkeits-Fixes von Scandar auf Basis von OSV.dev-Advisories.

PaketVonNachTypBehebt
minimatch3.0.43.1.2direkt (package.json)EXAMPLE-001
brace-expansion1.1.111.1.12Overrides (transitiv)EXAMPLE-002

package-lock.json wurde mit npm install neu aufgelöst. Nach dieser Änderung bleiben keine bekannten Advisories. Führe vor dem Merge deine Tests aus, besonders bei Änderungen mit major oder Override.

In einfachen Worten

minimatch 3.0.4 → 3.1.2 · EXAMPLE-001

  • Was es ermöglicht: Ein Angreifer, der den geprüften Text kontrolliert, kann den Prozess so lange beschäftigen, dass die Anfrage hängt. Dieser Satz ist ein Beispiel, keine Advisory.
  • Wann du betroffen bist: Nur wenn die Anwendung nicht vertrauenswürdige Eingaben an das Paket gibt. Das Beispiel beschreibt kein echtes Projekt.
  • Upgrade: Das Beispiel hebt eine direkte Abhängigkeit auf ein späteres 3.x-Release. Lies vor dem Merge die Release Notes.

Direkte Bereiche wechseln zur gepatchten Version, transitive Pakete werden mit Overrides gepinnt, und die Lockfile wird neu erzeugt.

Die Beschreibung nennt jedes Paket und erklärt einfach, was es bedeutet, wenn bereits eine Erklärung im Cache liegt.

Wie ein Fix entsteht

Funktionen

Alles, was dir hilft zu entscheiden, was zu beheben ist, und es dann zu beheben.

Erreichbarkeit

Trennt importierte Pakete von denen, die dein Code nie erreicht, und reduziert so das Rauschen.

Jetzt, planen, später

Ein Prioritätswert pro Schwachstelle statt einer Wand aus roten Badges.

Bösartige Pakete

Auf OSV als Malware markierte Pakete erscheinen zuerst, mit der zu entfernenden Version.

Einfache Erklärungen

Was eine Advisory für dein Projekt bedeutet und was ein Upgrade ändert, in wenigen Sätzen.

Pull-Request-Checks

Ein Check auf jedem Pull Request, der fehlschlägt, wenn eine kritische oder hohe Advisory hinzukommt.

Warnungen

Scans im Hintergrund, mit Warnungen in Slack, Discord und der App, sobald eine neue Advisory erscheint.

Mehrere Fix-PRs

Mehr als ein Fix pro Projekt, nie zweimal dasselbe Paket, nie ein Push auf main.

Exporte

CycloneDX- und SPDX-SBOMs, CSV, druckbarer Bericht und README-Badge.

Vergleich

Scandar neben Dependabot, Snyk, Socket und Aikido, nach dem, was jeder veröffentlicht.

Fragen

Behebe noch heute die Schwachstellen, die zählen

Scanne ein öffentliches Repository ohne Konto oder melde dich an, um einen Pull Request für deinen Code zu öffnen.