In this article
Moderne Technologieumgebungen erfordern moderne Anwendungssicherheitstests
Ganz gleich, wie sorgfältig ein Entwicklungsteam arbeitet oder wie viele Sicherheitsprüfungen es in seinen Entwicklungsumgebungen durchführt: Schwachstellen gelangen in Produktivsysteme. Die komplexe und sich ständig weiterentwickelnde Natur heutiger Produktionsumgebungen erfordert moderne Anwendungssicherheitstests. Die Herausforderungen rund um Softwaresicherheit und -qualität betreffen alle. Ohne sichere Software können Sicherheitsteams ihre Systeme und Daten nicht schützen.
In diesem Artikel erkläre ich, wie Sie über sichere Softwareentwicklung nachdenken und die richtigen Tools für die Softwaresicherheitsherausforderungen von heute auswählen.
Bevor ich genau erläutere, was moderne Anwendungssicherheitstests bedeuten, sollten wir zunächst klären, warum in Produktionsumgebungen immer wieder Sicherheitslücken auftreten. Ganz gleich, wie talentiert oder gewissenhaft Ihre Entwickler und Anwendungssicherheitstest-Teams sind: Bei Entwicklung und Bereitstellung werden Fehler übersehen. Zweitens verändern sich Produktionsumgebungen heute ständig. Sie benötigen Tools, die sich anpassen und Webpages und Anwendungen genau untersuchen können.
Warum veraltete Tools in modernen Umgebungen versagen
Früher wurden Websites und Unternehmensanwendungen ganz anders erstellt und bereitgestellt als heute. Zunächst wurden sie in der Regel mit drei klar abgegrenzten Ebenen konzipiert und bereitgestellt: Präsentations-, Anwendungs- und Datenebene. Dieses Drei-Ebenen-Modell ist zwar nicht verschwunden, hat sich aber mit dem Aufkommen von Cloud-Computing, Microservices, APIs und Containern erheblich weiterentwickelt. Dadurch wurden Web- und Unternehmensanwendungen dynamischer, skalierbarer und widerstandsfähiger – vorausgesetzt, die Anwendungssicherheit stimmt.
Die vorherrschende Entwicklungsmethode war damals das Wasserfallmodell. Wie der Name schon sagt, wurden Anwendungen vollständig entwickelt und anschließend in linearen, aufeinanderfolgenden Schritten bereitgestellt, die wie ein Fluss verliefen und in einer umfangreichen Bereitstellung mündeten. Sicherheitstests fanden, sofern sie überhaupt durchgeführt wurden, erst gegen Ende des Entwicklungsprozesses statt – oder wenn Anwendungen kurz vor der Produktivsetzung standen oder bereits produktiv waren.
Diese „Big-Bang“-Bereitstellungen wurden heute weitgehend durch kontinuierliche Anwendungsentwicklung und -bereitstellung sowie in manchen Fällen durch Continuous Deployment ersetzt. Dabei stellen Unternehmen ein Minimum Viable Product bereit, das anschließend kontinuierlich aktualisiert wird. Idealerweise finden Sicherheits- und andere Anwendungstests laufend statt. Auch nach der Bereitstellung muss weiter getestet werden.
Ohne kontinuierliche oder zumindest regelmäßige Tests entstehen Schwachstellen, wenn neue Softwarefunktionen hinzukommen, APIs aktualisiert und neue Integrationen erstellt werden – und dabei übersehen werden. Diese Systeme verändern sich täglich.
Was bedeutet das alles für die Wirksamkeit herkömmlicher Sicherheitstest-Tools? Eine ganze Menge.
Ältere Webcrawler wurden für die Zeit vor dem Aufkommen von APIs entwickelt. Die meisten herkömmlichen Scanner können nicht einmal Single-Page-Anwendungen (SPAs) richtig bewerten. Ich bin zum Beispiel immer wieder überrascht, wie häufig Kunden und Interessenten, die Snyk API & Web bewerten, uns berichten, dass Snyk API & Web Bereiche ihrer Anwendungen erreicht, die kein anderes von ihnen getestetes Prüftool erfassen konnte.
Ein Interessent, der inzwischen Kunde ist, prüfte Snyk API & Web und verschiedene Wettbewerber. Dabei entdeckte er eine kritische Schwachstelle in einer seiner Anwendungen, die niemand sonst sehen konnte. Das Team konnte sich nicht erklären, wie das möglich war, und schrieb uns, um zu erfahren, wie wir sie gefunden hatten. Es wollte mit uns besprechen, was zu diesem Fund geführt hatte. Wir mussten untersuchen, wie wir die Schwachstelle gefunden hatten, und nachweisen, dass sie tatsächlich existierte. Außerdem wollten wir herausfinden, warum andere sie nicht entdeckt hatten. Die Antwort war die Abdeckung: Unser Crawler fand den Endpunkt erfolgreich, während alle Wettbewerber ihn übersahen.
Diese Geschichte zeigt, wie wichtig es ist, ein Dynamic Application Security Testing (DAST)-Tool zu finden und einzusetzen, das für die Bewertung moderner Geschäfts- und Technologieumgebungen entwickelt wurde und Webanwendungen und APIs präzise prüfen kann.
Woran Sie eine moderne DAST-Lösung erkennen
Das können Sie von einer modernen DAST-Lösung erwarten, die all das leistet.
Technologieunabhängig
Ein DAST-Scanner sollte technologieunabhängig sein. Das bedeutet, dass er Anwendungen unabhängig von den zu ihrer Entwicklung verwendeten Programmiersprachen oder Technologien effektiv testen kann. Das ist besonders in der heutigen vielfältigen und komplexen Anwendungslandschaft von Vorteil, in der Anwendungen häufig aus mehreren Komponenten bestehen, die von verschiedenen Teams mit unterschiedlichen Sprachen entwickelt wurden.
Fokus auf die Developer Experience
Ein moderner DAST-Scanner ist für Entwickler konzipiert. Er arbeitet ähnlich wie Angreifer, macht Probleme direkt sichtbar und kann Exploits belegen. So werden Schwachstellen für Entwickler greifbarer. Außerdem erhalten sie maßgeschneiderte Anweisungen zur Behebung der Probleme, abgestimmt auf den Technologie-Stack der Anwendung. Der Fokus auf umsetzbare Erkenntnisse und möglichst wenige falsch-positive Ergebnisse spart Entwicklern viel Zeit und Aufwand und steigert ihre Produktivität sowie die Sicherheitslage ihrer Anwendungen.
Integration in CI/CD-Pipelines
Snyk API & Web empfiehlt, DAST-Scanner in CI/CD-Pipelines zu integrieren. Diese Integration ist entscheidend, um Sicherheit in den Entwicklungsprozess einzubetten und aus DevOps DevSecOps zu machen. Durch individuell angepasste Tests und eine dedizierte Testumgebung kann DAST Risiken und Schwachstellen in Echtzeit erkennen und so einen sichereren und effizienteren Entwicklungszyklus ermöglichen.
Umfassende Erkennung von Schwachstellen
Der DAST-Scanner ist darauf ausgelegt, ein breites Spektrum an Schwachstellen zu erkennen und detaillierte Berichte sowie Anleitungen zur Behebung bereitzustellen. Eine umfassende Abdeckung stellt sicher, dass Anwendungen und APIs gründlich getestet werden.
Minimierung falsch-positiver Ergebnisse
Ein wesentlicher Vorteil von DAST ist die Möglichkeit, falsch-positive Ergebnisse zu minimieren – im Vergleich zu anderen Testmethoden. Diese präzise Erkennung echter Schwachstellen entlastet Entwicklungsteams und ermöglicht es ihnen, sich auf tatsächliche Sicherheitsprobleme zu konzentrieren, statt fehlerhaften Warnmeldungen nachzugehen.
Die Philosophie von Snyk API & Web: Für heute entwickelt, für morgen neu gedacht
Als wir mit der Entwicklung von Snyk API & Web begannen, konzentrierten wir uns auf zwei zentrale Probleme: erstens die Abdeckung und zweitens die Herausforderung falsch-positiver Ergebnisse. Uns war klar, dass wir bei null anfangen mussten, um wirklich gute Arbeit zu leisten.
Wir wussten, dass wir erfolgreich sein konnten. Wir hatten viel Erfahrung mit der Entwicklung von Browsern, JavaScript und anderen Technologien für Webpages. Dieses Wissen nutzten wir, um einen Crawler zu entwickeln, der sich von allen anderen auf dem Markt unterschied und heute durch KI erweitert wird.
Wir waren auch deshalb erfolgreich, weil wir uns auf eine der größten Herausforderungen bei Webanwendungsscannern konzentrierten: falsch-positive Ergebnisse. Dabei kamen zahlreiche Methoden zum Einsatz – von heuristischen Analysen bis zur Entwicklung präziser Verfahren zur Erkennung bestimmter Schwachstellen. Außerdem arbeiteten wir daran, gefundene Schwachstellen sicher auszunutzen, um den nötigen Nachweis zu erbringen, dass ein konkreter Fehler tatsächlich ausnutzbar ist. Wenn wir beispielsweise eine SQL-Injection-Schwachstelle erkennen, nutzt ein spezielles Modul diese Schwachstelle, um eine Verbindung zur Datenbank herzustellen und nachzuweisen, dass ein Angriff möglich ist.
Um als Tool zur Bewertung von Webanwendungen wirksam und relevant zu bleiben, muss ein Sicherheitsbewertungsprodukt bei Bedarf überarbeitet werden. Genau das haben wir getan. Nach einigen Jahren im Einsatz bemerkten wir neue Probleme, die unseren Crawler beeinträchtigten. Statt die bestehenden Probleme zu umschiffen, entwickelten wir eine zweite Version unseres Crawlers von Grund auf neu. So konnten wir die gewünschten Verbesserungen umsetzen und alle Erkenntnisse aus den ersten Jahren einfließen lassen.
Leider halten viele etablierte Anbieter an den Altlasten fest, die bei der ursprünglichen Entwicklung ihrer Produkte entstanden sind. Mit der Zeit entwickeln sich daraus schwer lösbare strukturelle Probleme.
Um moderne Webanwendungen zu schützen, müssen Unternehmen einen aktuellen DAST-Scanner wählen, der auf Risiken durch KI-generierten Code vorbereitet ist. Er sollte technologieunabhängig und entwicklerfreundlich sein, sich nahtlos in CI/CD-Pipelines integrieren lassen, Schwachstellen umfassend erkennen und falsch-positive Ergebnisse effizient minimieren. Zusammengenommen verbessern diese Eigenschaften Sicherheitstests und sorgen dafür, dass sie effektiver sind und modernen Entwicklungspraktiken entsprechen.
Aber Sie müssen mir das nicht einfach glauben. Mir ist bewusst, dass ich nicht unvoreingenommen bin. Sie können selbst sehen, wie Snyk API & Web funktioniert und sich von der einfachen Bedienung, der präzisen Erkennung von Schwachstellen sowie der Qualität der Berichte und Anleitungen zur Behebung überzeugen.
Für Snyk API & Web anmelden
Nutzen Sie noch heute unsere entwicklerorientierte DAST-Engine
Decken Sie Schwachstellen mit der KI-gestützten DAST-Engine von Snyk automatisch und skalierbar auf. Verlagern Sie Sicherheitstests mit Automatisierung und konkreten Behebungsempfehlungen nach links – nahtlos integriert in Ihren SDLC.