Skip to main content

Sicherheitserkenntnisse mit einem Snyk Ambassador

Artikel von
Headshot of Andres Haro

Andres Haro

11. Oktober 2022

0 Min. Lesezeit

Von Andres Haro, Snyk Ambassador

Sicherheit ist in der Tech-Branche schon seit Jahren ein wichtiges Thema. Dennoch halten sich viele Unternehmen nicht an ihre eigenen Protokolle oder Richtlinien, wenn es um die Absicherung von Code geht.

Es ist leicht zu glauben, dass Sicherheitsvorfälle selten sind (oder in der eigenen Organisation wahrscheinlich nicht vorkommen). Der jüngste Vorfall bei Uber ist jedoch nur eines von vielen Gegenbeispielen. Auslöser war ein 18-Jähriger, der mit Social Engineering einen Uber-Mitarbeiter dazu brachte, sich auf einer gefälschten Uber-Website anzumelden. So konnte er die eingegebenen Zugangsdaten in Echtzeit abfangen und sich auf der echten Uber-Website anmelden.

Der Uber-Datenschutzverstoß und die daraus gezogenen Lehren

Uber hatte damals MFA aktiviert – eine App forderte den Mitarbeiter beim Anmelden dazu auf, auf seinem Smartphone eine Schaltfläche zu drücken. Um diesen Schutz zu umgehen, gab der Hacker die Zugangsdaten mehrmals auf der echten Website ein. Der Mitarbeiter war verwirrt oder müde und drückte schließlich die Schaltfläche. Zu diesem Zeitpunkt hatte sich der Hacker bereits Zugang verschafft.

Stellen Sie sich nun vor, Uber hätte als Unternehmen nichts dagegen tun können. Trotz MFA war ein böswilliger Nutzer kreativ genug, persönliche Daten des Unternehmens zu erlangen und Schaden anzurichten. Stellen Sie sich jetzt vor, was hätte passieren können, wenn das Unternehmen keine Maßnahmen zur Absicherung seines Codes ergriffen hätte.

Wie können Sie Ihren Code schützen?

Wenn Sie Teil der Tech-Community sind, nutzen Sie wahrscheinlich recht häufig Stack Overflow, um Open-Source-Code und Antworten auf Fragen zu finden. Das ist ein großartiges Tool für Zusammenarbeit und Problemlösung. Wenn Sie jedoch Code von einer Drittanbieter-Website direkt in Ihre Anwendung kopieren, setzen Sie sich zahlreichen potenziellen Sicherheitslücken aus.

Um diese potenziellen Risiken zu vermeiden, empfehle ich, den Code Checker von Snyk zu verwenden, um den ausgewählten Code zu scannen, bevor Sie ihn in einen Branch Ihrer Produktionsumgebung kopieren.

Webseite des Snyk Code Checkers mit eingegebenem JavaScript-Code zur Sicherheitsanalyse sowie Anmeldebuttons für GitHub und Google und einem Button „Code überprüfen“.

Vielleicht fragen Sie sich jetzt: Was kann Snyk für mich tun? Snyk hilft Ihnen nicht nur dabei, Code von jeder Plattform zu scannen, sondern liefert auch Einblicke in mögliche Probleme in Ihren aktuellen Repositories und gibt Empfehlungen zu deren Behebung.

Wie Sie im Bild unten sehen, ist Snyk mit meinem GitHub-Konto verbunden.

Snyk-Sicherheits-Dashboard mit ausstehenden Aufgaben, gefährdeten Projekten und der aktuellen Anzahl von Sicherheitsproblemen.

Wenn Sie Snyk mit Ihrem GitHub-Konto verbinden, können Sie prüfen, welche Abhängigkeiten nicht aktuell sind, was Ihren Code beeinträchtigt und was aktualisiert werden muss.

Das folgende Bild zeigt einen Snyk-Bericht. Darin sind die beim Scan gefundenen Sicherheitslücken aufgeführt und nach Schweregrad als niedrig, mittel, hoch oder kritisch eingestuft. So liegen Ihnen alle Informationen vor, die Sie benötigen, um eine Sicherheitslücke zu ignorieren oder zu beheben.

Snyk-Dashboard mit Schwachstellen in package.json, darunter eine Prototype-Pollution-Schwachstelle mit hohem Schweregrad in lodash und eine Schaltfläche zum Beheben von Schwachstellen.

Als DevSecOps-Praktiker priorisiere ich kritische Sicherheitslücken immer und empfehle Teams, sich die Bewertung anzusehen und zu prüfen, ob wir die Lücke sofort beheben können. Warum? Weil Ihre Softwareentwickler über die entdeckten Sicherheitslücken informiert werden müssen und prüfen sollten, ob sie diese im aktuellen Sprint beheben können. Andere Teams entscheiden sich wiederum dafür, hohe oder kritische Sicherheitslücken noch am Tag ihrer Entdeckung zu beheben. Letztlich hängt das von den Ressourcen und dem Personal Ihrer Organisation ab. Snyk ist besonders hilfreich, weil es beide Vorgehensweisen unterstützt: Sie können eine Sicherheitslücke später beheben oder sofort einen PR erstellen.

Wenn Sie auf „Diese Sicherheitslücke beheben“ klicken, wird Folgendes angezeigt:

Bericht zu Sicherheitskorrekturen mit anfälligen Paketen, verfügbaren Upgrades, partiellen Korrekturen und nicht behebbaren Problemen

Auf dem Bildschirm Fix-PR öffnen sind alle beim Scan gefundenen Sicherheitslücken aufgeführt – möglicherweise haben Sie dazu noch konkrete Fragen. Um mehr über ein bestimmtes Problem in der PR-Liste zu erfahren, klicken Sie auf eine der Sicherheitslücken. In diesem Fall klicken wir unter Probleme mit einer Lösung auf Regular Expression Denial of Service (ReDoS).

Snyk Vulnerability DB-Seite mit Details zu einer schwerwiegenden Regular-Expression-Denial-of-Service-Schwachstelle im npm-Paket ansi-html.

Hier erhalten Sie eine vollständige Übersicht über das Problem. Falls es nicht tatsächlich besteht oder irrtümlich gemeldet wurde, können Sie es jederzeit melden, indem Sie auf „Einen Fehler gefunden?“ klicken. Dadurch gelangen Sie zu einem weiteren Bildschirm, auf dem Sie die Details mitteilen können.

Wenn Sie mit einer bestimmten Sicherheitslücke nicht vertraut sind, erfahren Sie mehr darüber auf Snyk Learn. In unserem aktuellen Beispiel finden Sie hier die ReDoS-Lektionen.

Da wir nun besser informiert sind und uns sicherer fühlen, können wir den PR erstellen. In GitHub sollte er in etwa so aussehen:

GitHub-Pull-Request von Snyk mit dem Titel „Behebung von 8 Sicherheitslücken“, in dem anfällige npm-Abhängigkeiten sowie deren Schweregrad, Probleme und Ausnutzungsreife aufgeführt sind.

Anschließend können Sie den neuen PR und den neuen Branch mit allen Korrekturen mergen.

GitHub-Pull-Request mit erfolgreich bestandenen Prüfungen, keinen Merge-Konflikten und der Option, den Pull Request zusammenzuführen

Wenn Sie sich für „Mergen“ entscheiden, wird Folgendes angezeigt:

Dunkle GitHub-Oberfläche mit einem erfolgreich zusammengeführten und geschlossenen Pull Request, einem Kommentarfeld und der Schaltfläche „Branch löschen“.

Wenn Sie wissen möchten, was sich in Ihrem Repository geändert hat, sehen Sie sich die geänderten Dateien in GitHub an:

Dunkel gestalteter Code-Diff mit aktualisierten Abhängigkeitsversionen in package.json; darüber ein eingeklappter großer Diff für package-lock.json

Wie Sie sehen, wurden einige Aktualisierungen vorgenommen, damit alles auf dem neuesten Stand ist. Nun können wir zu unserem Snyk-Dashboard zurückkehren und prüfen, ob alle Probleme behoben wurden. Wenn Sie einen Bericht an die Geschäftsleitung senden müssen, empfehle ich, diese Personen zu Ihrem Snyk-Konto hinzuzufügen und den Bericht mit ihnen zu teilen.

Dashboard eines Sicherheitsberichts mit Gesamtzahlen zu Schweregraden von Problemen, Lizenzproblemen, Trends im Zeitverlauf, Zeiträumen mit Sicherheitsrisiken und Aktivitätskennzahlen

Erweitern Sie Ihre Sicherheitsexpertise mit Snyk

Wenn Sie mehr über Anwendungssicherheit für Entwickler erfahren möchten, besuchen Sie Snyk Learn. Dort finden Sie zahlreiche interaktive Lektionen zu Sicherheitslücken in verschiedenen Programmiersprachen und Ökosystemen. Oder sehen Sie sich lieber Videos an? Dann besuchen Sie den offiziellen YouTube-Kanal von Snyk. Wenn Sie Sicherheitstipps benötigen, können Sie sich gerne an einen der Snyk Ambassadors wenden. Sie sind eine sehr sympathische Gruppe mit umfassendem Wissen über Cybersicherheit – und der Club wächst ständig!

Weiterlesen

AI Background min crop
Blog

KI ruft alle Risiken auf den Plan, die Sie akzeptiert haben: Sieben Erkenntnisse aus dem AI Security Panel: Unfiltered

KI macht Angriffe günstiger und schneller und legt Risiken offen, die Unternehmen bereits tragen. Vier Sicherheitsverantwortliche erklären, warum Abwehr in Maschinengeschwindigkeit und schnellere Behebung jetzt unverzichtbar sind.

blog feature ai violet
Blog

VulnBump: Können KI-Agenten anfällige Abhängigkeiten beheben, ohne den Build zu beschädigen?

VulnBump testet KI-Agenten anhand von 307 realen Upgrades von Abhängigkeiten. Eine Behebung zählt nur, wenn die Sicherheitslücke geschlossen ist und Build und Tests weiterhin erfolgreich sind.

blog feature snyk container custom base recommendations
Blog

Evo Agentic AppSec: Sicherheit, die mit der KI-Entwicklung Schritt hält

KI-gestützte Entwicklung ist schneller als herkömmliche Sicherheitsabläufe. Snyks Agentic AppSec setzt Sicherheitsagenten ein, um Schwachstellen kontinuierlich zu finden, zu beheben und zu überprüfen – während Menschen die Maßstäbe festlegen.