Sicherheitserkenntnisse mit einem Snyk Ambassador
Andres Haro
11. Oktober 2022
0 Min. LesezeitVon 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.

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.

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.

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:

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).

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:

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

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

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

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.

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!


