Skip to main content

Snyk Open Source bietet Sicherheitsscans für C/C++-Abhängigkeiten ohne Manifestdateien

Artikel von
Headshot of Michal Brutvan

Michal Brutvan

blog feature oss cpp

5. April 2022

0 Min. Lesezeit

Wir freuen uns, die allgemeine Verfügbarkeit von Sicherheitsscans für C/C++ in Snyk Open Source bekannt zu geben. Damit können Entwicklungs- und Sicherheitsteams bekannte Sicherheitslücken in ihren C/C++-Open-Source-Bibliotheksabhängigkeiten finden und beheben.

C and C++ Scans in the Snyk CLI

Keine Manifestdateien

Das C- und C++-Ökosystem ist komplex und schwer zu überblicken: Es gibt zahlreiche Open-Source-Projekte, Repositories und Paketmanager, die verwaltet werden müssen. Diese Veröffentlichung ist unser erster Schritt auf dem Weg zur Unterstützung von Scans für nicht verwalteten Code.

Im Gegensatz zu anderen Lösungen benötigt die Snyk CLI keine Manifestdatei, um Abhängigkeiten aufzulösen. Sie wandelt Dateien in digitale Signaturen, sogenannte Hashes, um und gleicht diese mit den Snyk-Datenbanken ab, um eine Liste passender Open-Source-Komponenten zu erstellen. Diese Liste wird anschließend verwendet, um unsere Snyk Vulnerability Database nach Sicherheitslücken zu durchsuchen.

Entwicklerorientiert

Die Developer-Security-Plattform von Snyk ist branchenweit einzigartig: Als einzige Developer-First-Lösung ermöglicht sie es, die gesamte moderne Anwendung in einer DevOps-Umgebung schnell und sicher zu entwickeln. Snyk Open Source hebt sich von ähnlichen Tools ab, weil es den Kontext und die Struktur von C- und C++-Projekten versteht. Dadurch gibt es weniger Fehlalarme und es wird weniger Zeit für die manuelle Überprüfung der Erkennungen benötigt.

Kuratierte Datenbank

Unser Team aus Sicherheits- und Open-Source-Experten verbessert kontinuierlich unsere Vulnerability-Datenbank für Open-Source-C- und -C++-Projekte. Außerdem ordnen wir Projekt-Forks und -Mirrors zu, damit die Snyk CLI mehr Kontext erhält. Wird eine Sicherheitslücke erkannt, empfiehlt Snyk passende Maßnahmen, etwa auf welche Paketversion Sie aktualisieren sollten, um die Sicherheitslücke zu beheben.

Sicherheitshinweis mit CVE-2016-9842 und CWE-189 sowie der Empfehlung, madler/zlib auf Version 1.2.9 oder höher zu aktualisieren.

So funktioniert es

Mit dieser Version wird die neue Befehlszeilenoption --unmanaged eingeführt. Damit weisen Sie die CLI an, im Quellcode nach Abhängigkeiten zu suchen, ohne Manifestdateien zu benötigen.

Um C/C++-Open-Source-Abhängigkeiten im Code zu scannen, führen Sie einfach snyk test --unmanaged aus. Um eine Momentaufnahme der Abhängigkeiten und Probleme in das Snyk-Dashboard zu importieren, führen Sie snyk monitor --unmanaged aus.

Snyk CLI einrichten

Stellen Sie zunächst sicher, dass Sie die Snyk CLI installiert haben und Version 1.885.0 oder höher verwenden.

Die Einrichtung der Snyk CLI ist ganz einfach. Installieren Sie sie schnell mit npm oder Homebrew. Anschließend müssen Sie sich nur noch mit Ihrem Snyk-Konto authentifizieren. Falls Sie noch kein Konto haben, können Sie sich kostenlos registrieren.

$ npm install -g snyk
$ snyk auth

Ihr Browser öffnet sich und fordert Sie auf, die CLI zu authentifizieren. Führen Sie die Authentifizierung durch.

Jetzt können Sie mit der Snyk CLI Ihre C/C++-Projekte auf Sicherheitslücken scannen.

Nach Sicherheitslücken scannen

Testen wir die Snyk CLI mit einem Testlauf.

Damit ein Projekt gescannt werden kann, müssen sich die Open-Source-Bibliotheken im zu scannenden Verzeichnis befinden. Führen Sie in diesem Verzeichnis den folgenden CLI-Befehl aus:

$ snyk test --unmanaged

Je nach Anzahl der Dateien in Ihrem Projekt dauert der Scan nur wenige Sekunden oder bis zu ein paar Minuten. Sobald der Scan abgeschlossen ist, wird eine Liste der erkannten Sicherheitslücken angezeigt:

Issues:

 ✗ [Critical] Double Free
    Introduced through: <https://curl.se|curl@7.58.0>
    URL: <https://security.snyk.io/vuln/SNYK-UNMANAGED-CURL-2317564>

 ✗ [Critical] Out-of-bounds Read
    Introduced through: <https://curl.se|curl@7.58.0>
    URL: <https://security.snyk.io/vuln/SNYK-UNMANAGED-CURL-2317585>

Tested 3 dependencies for known issues, found 29 issues.

Neue Sicherheitslücken überwachen

Mit dem Befehl snyk monitor --unmanaged erstellen Sie eine Momentaufnahme der Abhängigkeiten und Sicherheitslücken und laden sie in die Snyk-App hoch. Snyk überwacht anschließend die Abhängigkeiten und benachrichtigt Sie, wenn neue Sicherheitslücken in unserer Vulnerability Database erfasst werden.

Wenn unsere Datenbank mit Open-Source-Projekten aktualisiert und verbessert wird, können neue Abhängigkeiten erkannt werden. Führen Sie regelmäßig den Befehl snyk monitor --unmanaged aus, um die Liste der überwachten Abhängigkeiten zu aktualisieren.

Demnächst verfügbar

Ihr Feedback ist uns immer wichtig. Wir werden die CLI-Funktionen weiterentwickeln und Unterstützung für Snyk-CI-Plugins und IDEs hinzufügen. Außerdem aktualisieren wir die APIs, damit sie direkt nach Sicherheitslücken in C/C++-Paketen suchen und Tests mit Conan und anderen Paketmanagern integrieren können. Unser Snyk Code-Team plant außerdem, künftig C- und C++-Projekte zu unterstützen. Wenn Sie weitere Ideen oder Feedback mit uns teilen möchten, schreiben Sie bitte an ccpp@snyk.io.

Registrieren Sie sich für Snyk und testen Sie es noch heute kostenlos!

Besuchen Sie unsere Veranstaltung „How to use the CLI for C/C++“

Michal Brutvan (Senior Product Manager bei Snyk) und Jason Lane (Product Marketing Director bei Snyk) erläutern, was diese Funktion für Sie bedeutet, und freuen sich auf Ihr Feedback und Ihre Fragen. Nehmen Sie am 21. April an dieser 30-minütigen Gesprächsrunde im Rahmen der Office Hours teil.

Sichern Sie Ihre Open-Source-Abhängigkeiten

Die entwicklerorientierten Tools von Snyk erstellen mit einem Klick Fix-Pull-Requests für anfällige Open-Source-Abhängigkeiten und deren transitive Abhängigkeiten.

Weiterlesen

Blog

Frontier-Modelle fanden die Schwachstellen. Nur der Angreifer fand die Angriffsketten.

Die statische Analyse fand die Schwachstellen, doch erst Live-Angriffstests bewiesen, wie sie sich zu Angriffen verketten lassen. Ein Vergleich von Evo COS, Claude Security und Claude Code Security.

feature insights context
Blog

Autonome Angriffe sind bereits Realität. Die Verteidigung muss Schritt halten.

Autonome Angreifer verkürzen das Zeitfenster für die Verteidigung. Erfahren Sie, wie kontinuierliches Erkennen, Beheben, Validieren und Verhindern Sicherheitsteams helfen kann, Schritt zu halten.

Blog

Warum KI-Coding-Agenten immer wieder fehlerhafte Zugriffskontrollen schreiben

KI-Coding-Agenten können Autorisierungslogik erzeugen, die kompiliert und die Prüfung besteht, dabei aber die Daten eines Mandanten für einen anderen offenlegt. Erfahren Sie, warum fehlerhafte Zugriffskontrollen schwer zu erkennen sind und wie Sie sie verhindern.