Skip to main content

Mit der Snyk Vulnerability Database Projekte für The Big Fix finden

Artikel von
Headshot of DeveloperSteve Coochin

DeveloperSteve Coochin

blog hero the big fix

16. Februar 2022

0 Min. Lesezeit

Als Entwicklerinnen und Entwickler haben wir alle unsere morgendliche Routine: Kaffee machen, Slack/Discord/E-Mails checken und die neuesten Nachrichten lesen. Ein Teil meiner täglichen Morgenroutine ist es, in der Snyk Vulnerability Database nach den neuesten Open-Source-Schwachstellen zu suchen.

Besonders interessant finde ich die Arten von Exploits und Schwachstellen, die in verschiedenen Ökosystemen auftreten. Seit Mai 2021 verfolge ich beispielsweise das Auftreten von Schwachstellen in Tensorflow-Bibliotheken. Zum Zeitpunkt der Veröffentlichung dieses Artikels sind erneut welche aufgetaucht – fast zwei Seiten voll!

Ein weiteres weit verbreitetes Ökosystem, das in letzter Zeit mehrfach aufgetaucht ist, ist ElectronJS. Es bildet die Grundlage vieler beliebter Apps, etwa Slack, VSCode und Twitch, um nur einige zu nennen.

Ich zeige Ihnen, wie Sie nicht nur ein Projekt finden können, an dem Sie mitarbeiten, sondern sich auch eines der limitierten Sonder-T-Shirts von #thebigfix sichern und dazu beitragen können, Nutzerinnen und Nutzer vor Schwachstellen zu schützen. Dabei gewinnen alle!

Erste Schritte mit The Big Fix

Melden Sie sich zuerst für ein kostenloses Snyk-Konto an, falls Sie noch keines haben. Rufen Sie die Seite mit den ersten Schritten auf und geben Sie die üblichen Angaben ein (eine Kreditkarte ist nicht erforderlich). Besuchen Sie anschließend die Website von The Big Fix und klicken Sie auf Jetzt registrieren. Tragen Sie Ihren Namen und Ihre E-Mail-Adresse ein – und schon können Sie loslegen.

Nach der Anmeldung geht es darum, etwas zu finden, das Sie beheben können. Dafür gibt es mehrere Möglichkeiten.

Ein vorhandenes Repository verbinden

Wenn Sie bereits ein Projekt-Repository im Sinn haben, können Sie es schnell und einfach verbinden. Öffnen Sie Ihr Snyk-Dashboard und klicken Sie auf Projekt hinzufügen. Wenn Ihr gewünschtes Repository nicht im Schnellmenü aufgeführt ist, klicken Sie auf Andere. Daraufhin wird eine umfassende Liste mit Integrationsoptionen angezeigt.

Wählen Sie das gewünschte Repository aus und folgen Sie den Schritten zum Verbinden und Konfigurieren.

Integrations-Dashboard mit Optionen zur Versionsverwaltung für GitHub, GitHub Enterprise, GitLab, Bitbucket und Azure Repos

Klicken Sie nach dem Verbinden erneut auf Projekt hinzufügen und wählen Sie das Repository aus, in dem Sie einen Open-Source-Schwachstellenscan durchführen möchten. Sie können auch private Repositories scannen.

Repository-Auswahloberfläche mit Suchleiste und aufklappbaren persönlichen Repositories und Organisations-Repositories unter „developersteve.“

Wenn Sie mit Snyk Open Source verbunden sind, identifiziert der Scan anfällige Pakete im verbundenen Paketmanifest. Außerdem ermittelt er Korrekturen und mögliche Behebungsschritte. Mit Snyk Open Source können Sie auch automatisch einen Pull Request mit möglichen Korrekturen im Repository erstellen lassen. Denken Sie daran, die Anwendung zu testen, um sicherzustellen, dass im Projekt alles wie erwartet funktioniert.

Ein Projekt finden, zu dem Sie beitragen können

Wenn Sie ein Projekt suchen, in dem Sie bei der Behebung einer Schwachstelle helfen können, finden Sie eines in der Snyk Vulnerability Database. Durchsuchen Sie dazu Pakete oder das Ökosystem Ihrer Wahl.

Eines meiner Lieblingsprojekte aus dem PHP-Open-Source-Ökosystem, zu dem ich kürzlich im Rahmen von The Big Fix beigetragen habe, ist Invoice Ninja. Dieses Open-Source-Projekt unterstützt Unternehmen auf der ganzen Welt bei Rechnungsstellung und Buchhaltung und lässt sich mit zahlreichen Business-Tools von Drittanbietern verbinden.

Zuerst erstellte ich einen Fork des Haupt-Repositorys in meinem eigenen Konto. Anschließend verband ich das Repository wie oben beschrieben mit Snyk Open Source.

Dunkel gestaltete GitHub-Repository-Seite mit Ordnern, aktuellen Commit-Nachrichten und 9.437 Commits

Der Scan fand einige Schwachstellen im PHP-Composer-Paketmanifest. Eine davon wurde über DOMPDF 0.6.2 als Abhängigkeitsbibliothek eingebunden.

Details zu einer Schwachstelle in phenx/php-font-lib: eine Cross-Site-Scripting-Schwachstelle mit mittlerem Schweregrad, für die kein bekannter Exploit vorliegt.

Bei genauerer Untersuchung einiger Ergebnisse entdeckte ich mehrere Probleme, darunter einen für Cross-Site-Scripting (XSS) anfälligen Pfad in PHP-Font-Lib – eine Schwachstelle aus dem Jahr 2014. Die Rückverfolgung durch das Projekt half dabei, nicht nur das Problem selbst, sondern auch die notwendige Korrektur zu finden.

Bei der Bereitstellung von Korrekturen sollten Sie einige Dinge beachten. Am wichtigsten ist, sicherzustellen, dass das gesamte Projekt weiterhin funktioniert. Bei Upgrades von Bibliotheken und Abhängigkeiten ist das besonders wichtig. Viele Menschen sind für ihren Geschäftsalltag auf diese Projekte angewiesen. Eine inkompatible Änderung möchte daher niemand in seinem Projekt sehen.

Ich holte das geforkte Repository mit einem Git-Pull-Request auf meinen lokalen Rechner und startete VSCode, auf dem das Snyk-Plugin installiert war. So konnte ich die betroffenen Pakete aktualisieren und debuggen. Anschließend führte ich den Code zum Testen auf meinem lokalen Rechner über einen lokalen Server aus (das ist auch mit dem integrierten PHP-Server möglich).

Zum Schluss commitete ich die Änderungen in mein geforktes Repository und reichte einen Git-Pull-Request ein. Die Community prüfte und untersuchte die Änderungen, bevor sie sie zusammenführte.

Das beglückende Gefühl, Beiträge geleistet zu haben

Ich helfe gerne etwas zurück, besonders wenn ich damit eine andere Community schützen und Schwachstellen verhindern kann. Als Beitragende und Beitragende in Open-Source-Communities ist es immer wichtig, sich einzubringen und dazu beizutragen, alle Nutzerinnen und Nutzer eines Projekts zu schützen.

Als Extra erhalten Sie ein kostenloses T-Shirt und nehmen mit Ihrem Namen an einer Verlosung von Preisen im Rahmen von The Big Fix teil.

Melden Sie sich bei The Big Fix an und legen Sie gleich mit dem Beheben los!

Seien Sie bei The Big Fix dabei

Schließen Sie sich den Tausenden Entwicklerinnen und Entwicklern an, die ihre Anwendungen bereits mit Snyk absichern.

Weiterlesen

blog feature snyk container custom base recommendations
Blog

Agentic AppSec: Softwareentwicklung ist agentisch geworden. Security nicht.

KI-gestützte Entwicklung überholt herkömmliche Security-Workflows. Snyk Agentic AppSec setzt Security-Agenten ein, die Schwachstellen kontinuierlich finden, beheben und überprüfen – während Menschen die Maßstäbe festlegen.

Live Stream

Remediation-Agenten verständlich erklärt: Warum Beheben besser ist als Finden

Erfahren Sie, wie der Remediation Agent von Snyk Sicherheitsinformationen, Analysen zur Ausnutzbarkeit und Validierung nutzt, um Schwachstellen in zusammenführbare Pull Requests zu verwandeln.

feature ai ide dark
Blog

Ein erster Einblick in Evo Agentic AppSec: Agentic Remediation und Schutz vor schädlichem Code

Entdecken Sie die ersten Agentic-AppSec-Funktionen von Snyk: einen autonomen Remediation Agent, der Sicherheitslücken behebt, und Malicious Code Defense, das riskante Pakete blockiert, bevor sie ausgeliefert werden.