Sichern Sie APIs und Webanwendungen mit Probely DAST Scanner

Da etwa ein Drittel aller bekannten Verstöße ein direktes Ergebnis eines erfolgreichen Angriffs auf Webanwendungen sind, ist es von größter Bedeutung, die Sicherheit Ihrer Webanwendungen und APIs zu testen.

Sie müssen nicht nur aus regulatorischen Gründen sicherstellen, dass Ihre Webanwendungen sicher sind, sondern Sie (sollten) sich auch um die Daten Ihrer Kunden und das Risiko für Ihr Unternehmen kümmern.

Sie haben sicherlich viele Möglichkeiten, Ihre Webanwendungen zu sichern, alle mit ihren Vor- und Nachteilen. Einige Lösungen verlassen sich auf die Identifizierung von Sicherheitsproblemen im Quellcode Ihrer Anwendungen. Andere schützen Ihre Anwendungen vor Angriffen. Und andere verlassen sich darauf, die Sicherheit Ihrer Webanwendungen zur Laufzeit dynamisch zu testen, genau wie es ein Hacker tun würde.

Der Schwerpunkt dieses Artikels liegt auf diesem letzteren Fall, nämlich auf Wahrscheinlich. Was Probely im Vergleich zu anderen interessant macht, ist, dass es zwei der Hauptprobleme von Web-Schwachstellenscannern angeht: die Scanabdeckung moderner Webanwendungen und die Qualität der Ergebnisse.

Probely hat zwei verschiedene Editionen: eine Self-Service-Edition für KMUs und eine andere für Unternehmen oder Unternehmen mit vielen Webanwendungen und APIs.

Probely konzentriert sich darauf, eine außergewöhnliche Abdeckung in modernen Entwicklungsumgebungen bereitzustellen und Fehlalarme mit evidenzbasierten Scanergebnissen zu eliminieren, während Sie DAST-Scanning in Ihren Entwicklungslebenszyklus integrieren können.

Zu schön um wahr zu sein?

Lesen Sie weiter, um mehr über meine Analyse von Probely zu erfahren.

Was genau macht Probely?

Mit Blick auf Entwickler und jede Unternehmensgröße testet Probely Ihre Anwendungen und APIs und scannt sie, um Sicherheitsprobleme und Schwachstellen zu finden. Nach Abschluss des Tests erhalten Sie Anleitungen zur Behebung der gefundenen Probleme.

Ihre Entwickler und Sicherheitsingenieure können über die intuitive Benutzeroberfläche mit Probely arbeiten. Wenn Sie jedoch Leistung und Flexibilität benötigen, können Sie sich auf ihre voll funktionsfähige API verlassen, da sie einem API-First-Entwicklungsansatz folgen. Ihre API bietet alle Funktionen, die Sie auf der Benutzeroberfläche sehen, und ermöglicht es Ihnen, Probely in eine CI/CD-Pipeline, ein Vulnerability-Management-Tool, einen Orchestrator oder einen Issue-Tracker zu integrieren. Wenn Sie die beliebten verwenden, haben Sie möglicherweise eine Out-of-the-Box-Integration. Das gilt für Tools wie JIRA, Jenkins, Azure DevOps, DefectDojo, CircleCI und Slack. Aber wenn Sie Ihren eigenen Issue Tracker oder Orchestrator entwickelt haben, dann ist die API der richtige Weg.

Abdeckung, Crawling und Genauigkeit

Probely verwendet einen Spider der nächsten Generation, um in Rich-Javascript-Anwendungen genauso zu navigieren, wie es ein normaler Browser tun würde, was zu einer hervorragenden Abdeckung der Website führt, was für viele andere DAST-Tools ein Problem darstellt. Dieser Spider ist ideal für Single-Page-Apps, wie sie auf React oder Angular JS basieren.

Beachten Sie, dass ein Scanner nur Schwachstellen in gefundenen Seiten identifizieren kann. Daher ist eine gute Spinne von größter Bedeutung.

  SolarWinds Network Performance Monitor im Vergleich zu WhatsUp Gold

Probely bietet auch verschiedene Scan-Profile an, je nachdem, welche Umgebung Sie testen möchten. Sie können ein weniger aufdringliches Scanprofil festlegen, wenn Sie Ihre Produktionsumgebung scannen möchten. Wenn Sie Ihre QA-Umgebung testen, können Sie ein gründlicheres Profil für vollständigere Scans festlegen. Durch das Testen einer Vorproduktionsumgebung können Sie Schwachstellen identifizieren und beheben, bevor Sie die Anwendung in der Produktion bereitstellen.

Berichterstattung

Obwohl Probely eine umfangreiche Liste von Schwachstellen erkennt, konzentriert es sich darauf, das zu melden, was relevant ist, und zwar ohne Fehlalarme. Für bestimmte Klassen von Schwachstellen liefert es den Nachweis, dass die Schwachstelle echt ist, und spart Ihrem Team Zeit bei der Überprüfung, ob die Schwachstellen echt und relevant sind.

Probely bietet umfangreiche Berichte über die Benutzeroberfläche, kann aber auch Schwachstelleninformationen mit einem Issue-Tracker oder einem Schwachstellen-Management-Tool synchronisieren, sodass Sie Probely in Ihre bestehenden Sicherheits- und Entwicklungs-Workflows integrieren können.

Probely kann Ihre Software auf Schwachstellen testen, wie sie in den OWASP TOP 10 aufgeführt sind, und vieles mehr. Es kann Ihnen auch helfen, Compliance zu erreichen, indem es spezifische Anforderungen von PCI-DSS, GDPR, HIPAA und ISO270-01 überprüft.

Aus dem OWASP TOP 10-Bericht entnommen, haben Sie auf einen Blick, was an dieser Compliance falsch läuft.

Schnittstelle

Die Benutzeroberfläche ist einfach und leicht zu navigieren, sodass Sie schnell loslegen können. Mit der Enterprise Edition können Sie Benutzer und Rollen steuern und benutzerdefinierte Rollen festlegen. Sie können Labels auch verwenden, um Benutzer, Assets und Schwachstellen zu organisieren, um die Sicherheit Ihrer Webanwendung besser zu verwalten. Da alle Funktionen über die API verfügbar sind, können Sie Probely problemlos in Ihre anderen Unternehmenssicherheitsanwendungen und -prozesse integrieren.

Wenn Sie Jira oder Azure Boards verwenden, können Sie Probely so konfigurieren, dass alle Schwachstellen automatisch an Ihren Issue-Tracker gesendet werden. Wenn der Entwickler das Problem im Issue-Tracker behebt und schließt, wird automatisch ein erneuter Test auf Probely ausgelöst, der überprüft, ob die Schwachstelle ordnungsgemäß behoben wurde. Ist dies nicht der Fall, wird das Problem im Issue-Tracker erneut geöffnet. Auf diese Weise kann Ihr Entwicklungsteam einen Schwachstellenbericht wie jeden anderen Fehler direkt im Issue-Tracker bearbeiten, ohne die Benutzeroberfläche von Probely zu verwenden. Schön, oder? 🙂

Los geht’s 🚀

Für meine Testzwecke habe ich die Enterprise Edition von Probely verwendet.

Sie bieten auch eine Standardedition und verschiedene Pläne zur Auswahl, einschließlich eines kostenlosen Plans. Im kostenlosen Plan testet der Scan nur drei Klassen von Schwachstellen: Cookies-Flags, Sicherheitsheader und SSL/TLS-Probleme. Der Pro-Plan bietet die meisten Funktionen und konzentriert sich auf KMUs und Organisationen, die fünf oder weniger Ziele scannen müssen.

Die Enterprise Edition konzentriert sich auf Organisationen mit einer großen Anzahl von Zielen und enthält zusätzliche Funktionen, wie sie in Unternehmenssoftware üblich sind: Benutzer, Gruppen, Rollen und Berechtigungen. Außerdem können Sie interne Ziele (in Ihrem privaten Netzwerk) scannen, indem Sie einen bereitgestellten Agenten installieren.

  Wählen Sie Zutaten und erhalten Sie Rezepte mit Kalorieninformationen

Hinzufügen eines Ziels

Das Hinzufügen eines Ziels ist einfach. Sobald Sie sich mit Ihrem Konto angemeldet haben, müssen Sie zur Seite „Ziele“ navigieren und auf „Hinzufügen“ klicken. Dann geben Sie einen Namen, eine URL und eine oder mehrere Bezeichnungen – z. B. Testen, Produktion, Entwicklung usw. – für das neue Ziel an. Damit Probely dieses Ziel als eigenständige API ohne unterstützende Web-App scannen kann, sollten Sie die entsprechende Option aktivieren, um es als API-Ziel zu identifizieren.

Wenn Ihr Ziel nicht im Internet verfügbar ist und Sie einen Probely-Agenten in Ihrem privaten Netzwerk installiert haben, können Sie beim Hinzufügen eines Ziels auswählen, welcher Agent verwendet werden soll.

Nachdem Sie ein Ziel hinzugefügt haben, müssen Sie seinen Besitz überprüfen, da Probely den Nachweis benötigt, dass Sie über die erforderlichen Berechtigungen verfügen, um einen Scan darauf auszuführen. Es gibt zwei alternative Methoden, um das Ziel zu validieren: Laden einer Datei mit bereitgestelltem Inhalt im Stammverzeichnis des Ziels oder Hinzufügen eines TXT-Eintrags zu Ihrem DNS-Eintrag mit dem Namen der Domäne und einigen spezifischen Inhalten des Eintrags. Sobald das Ziel validiert ist, können Sie es scannen, indem Sie einfach die Scan-Taste drücken.

Sie können den Fortschritt und den Status eines Scans überprüfen, indem Sie im Dashboard von Probely zur Registerkarte Scans navigieren. Diese Seite zeigt Ihnen, wann der Scan gestartet wurde und was er bisher gefunden hat. Die Ergebnisse sind nach Schweregrad eingefärbt, sodass Sie auf einen Blick sehen können, ob es kritische Probleme gibt, die sofort angegangen werden müssen.

Wenn Ihre Website über eine Anmeldeseite verfügt und Sie möchten, dass Probely dahinter einen Scan durchführt, müssen Sie Anmeldeinformationen angeben, die es ihr ermöglichen, die Website als authentifizierter Benutzer zu crawlen. Probely unterstützt die meisten Authentifizierungsmethoden für Anmeldeseiten.

Scannen einer API

Um ein API-Ziel zu scannen, muss Probely sein Schema angeben. Sie tun dies, wenn Sie ein API-Ziel hinzufügen, indem Sie entweder die OpenAPI-Schema-URL angeben oder das Schema hochladen, wenn Sie es zuvor als lokale Datei gespeichert haben. Mit der URL-Option kann Probely das Schema vor jedem Scan abrufen, um sicherzustellen, dass es immer mit der neuesten Version Ihres Schemas funktioniert.

Auch bei den Authentifizierungsmethoden für den API-Zugriff gibt es verschiedene Möglichkeiten. Probely unterstützt nicht nur statische Token, sondern ermöglicht auch eine dynamische Authentifizierungskonfiguration beim Scannen von APIs. Sie können einen Anmeldeendpunkt konfigurieren, an dem Probely ein Authentifizierungstoken erhalten kann, oder Sie können einen benutzerdefinierten Header mit einem festen API-Schlüssel darin festlegen. Sie können auch benutzerdefinierte Parameterwerte angeben, die Probely für die im Schema gefundenen verwendet.

  Was ist ein DNS-Cache und wie wird er aktualisiert?

Sobald Sie die Konfiguration der API-Authentifizierung und der Parameter abgeschlossen haben, können Sie den Scan starten, indem Sie auf die Schaltfläche Jetzt scannen klicken. Nach einigen Sekunden können Sie den Scan-Fortschritt auf derselben Scan-Seite verfolgen. Wenn der Scan beendet ist, können Sie einen Abdeckungsbericht herunterladen, der alle gefundenen Endpunkte und jeden Antwortcode anzeigt. Dieser Bericht zeigt auch an, ob es fehlerhafte Endpunkte gab.

Überprüfen Sie Ihre Ergebnisse

Die Ergebnisseite zeigt die Scan-Ergebnisse, sobald sie gefunden wurden, auch wenn Scans im Gange sind. Jeder Befund zeigt einen Schweregrad (hoch, mittel oder niedrig), das entsprechende Ziel und die entsprechende URL, die Befundbeschreibung, die Uhrzeit und das Datum, an dem er gefunden wurde, seinen Status (behoben oder nicht behoben) und den Beauftragten und ob er PCI- DSS- oder OWASP-Konformität.

Die Ergebnisseite hält Sie nicht nur über die erkannten Schwachstellen auf dem Laufenden, sondern ist auch nützlich, um Ihrem Team Schwachstellen zur Behebung zuzuweisen. Klicken Sie dazu auf die Checkbox auf der linken Seite und wählen Sie den Beauftragten aus einem Dropdown-Menü aus.

Probely bietet auch Informationen darüber, wie die gefundenen Schwachstellen behoben werden können. Zusammen mit diesen Anweisungen können Sie die vollständige Anfrage und Antwort sowie die Beweise einsehen.

Auf der Dashboard-Seite sehen Sie verschiedene Diagramme, die das Sicherheitsrisiko der gescannten Ziele zusammenfassen. Die Diagramme zeigen Trends in verschiedenen interessanten Metriken, wie z. B. Risikobewertungen, die durchschnittliche Zeit zur Behebung von Problemen und Schweregrade. Sie können auch einen Blick auf die Websites werfen, die die meiste Aufmerksamkeit erfordern, und auf eine Top-5-Rangliste der Schwachstellen mit der höchsten Häufigkeit.

Schließlich können Sie auf der Seite „Integrationen“ Probely so konfigurieren, dass es in viele verschiedene Tools integriert werden kann, um Projekte, Teamkommunikation, Problemverfolgung und mehr zu verwalten. Zu den verfügbaren Integrationen gehören Azure Boards, DefectDojo, Slack, Jira, Jenkins und CircleCI.

Ein Tool für Entwickler und Sicherheitsteams

Für agile Entwicklungsteams hat Time-to-Market höchste Priorität. Alles, was Sie tun können, um die Zeit zu minimieren, die es dauert, bis Ihre Software ohne Qualitätseinbußen in Produktion geht, ist sehr willkommen. Probely bietet genau das – eine kostengünstige Möglichkeit, die Sicherheit Ihrer Websites und APIs zu verbessern und Ihnen dabei zu helfen, Ihre terminbezogenen Versprechen einzuhalten und qualitativ hochwertige Softwareprodukte bereitzustellen.

Für Sicherheitsteams bietet Probely Ihnen eine Plattform, um Ihre Webanwendungen zu sichern und die Schwachstellen zu verwalten, die behoben werden müssen. Es ermöglicht Ihnen auch, einige der Sicherheitstests direkt an Entwicklungsteams auszulagern, während Sie eine Überwachungsrolle übernehmen.

Probely bietet kostenlose Testversionen, Evaluierungslizenzen für Unternehmen und Produktdemos an. Kontakt Wahrscheinlich um anzufangen.