Eine Freigabe kann zwischen geplanten Sicherheitsbewertungen ein ausnutzbares Problem einführen. Kontinuierliche KI-Penetrationstests helfen Teams dabei, die laufende Anwendung bei Änderungen zu testen. Das nützliche Ergebnis sind Beweise, auf die Entwickelnde reagieren können – und eine Möglichkeit zu überprüfen, ob eine bereitgestellte Korrektur den Fund tatsächlich behebt.
Aikido Infinite bietet kontinuierliche KI-Penetrationstests parallel zu Ihrem bestehenden Entwicklungsprozess. Dieser Leitfaden erklärt den Weg von einer ersten Bewertung zu einem Fund, den Maßnahmen der Entwickelnden und einem angeforderten Nachtest. Sie können Ihre aktuellen Sicherheitsscanner und das Issue-Tracking-Verfahren beibehalten, während Sie diesen Arbeitsablauf evaluieren.
Beginnen Sie mit einer eingegrenzten Anwendung und einer ersten Bewertung
Wählen Sie die Anwendung und Umgebung aus, die Sie testen möchten. Konfigurieren Sie den Umfang und den Zugriff und führen Sie eine erste Aikido-Bewertung durch. Verbinden Sie für kontinuierliche Tests die Repositories, die erforderlich sind, um relevante Änderungen zu identifizieren, und überprüfen Sie die aktuellen Berechtigungen und Guthabenanforderungen in der Setup-Dokumentation.
Halten Sie eine erste vollständige Bewertung getrennt von späteren gezielten Tests. Ein kleiner Test des geänderten Verhaltens ist keine neue Bewertung jeder Oberflächen der Anwendung.
Konfigurieren Sie, wann kontinuierliche Tests ausgeführt werden
Entscheiden Sie, ob das Testen einem konfigurierten Bereitstellungsbranch oder einem Zeitplan folgen soll. Stimmen Sie diesen Auslöser auf die Umgebung ab, die Aikido erreichen kann, einschließlich etwaiger Verzögerungen, die für den Abschluss einer Bereitstellung erforderlich sind.
Das Ziel ist es, den Anwendungszustand zu testen, den Sie tatsächlich auswerten. Ein neuer Commit, eine bereitgestellte Version und eine zugängliche Testumgebung sind verwandte Ereignisse, aber sie sind nicht austauschbar. Siehe kontinuierliches Penetrationstesten für die aktuellen Konfigurationssteuerelemente.
Verfolgen Sie den Fund in den Arbeitsablauf der Entwickelnden
Ein nützlicher Fund gibt Entwickelnden genügend Informationen, um das betroffene Verhalten zu verstehen, das Problem zu reproduzieren und eine Reparatur zu bewerten. Aikidos Penetrationstest-Übersicht erklärt die Validierungs- und Fundinformationen, die das Produkt bereitstellt.
Behalten Sie die Verantwortung für die Behebung in dem Prozess, den Ihr Team bereits verwendet. Erstellen oder aktualisieren Sie beispielsweise ein Issue in Ihrem bestehenden Tracker mit einem Link zum Aikido-Fund, der betroffenen Version, dem Verantwortlichen und den Akzeptanzkriterien der Reparatur. Dies kann eine manuelle Übergabe sein. Wenn Sie eine Integration verwenden, überprüfen Sie deren Verhalten für Penetrationstest-Funde, bevor Sie sich für die Synchronisierung oder den Abschluss darauf verlassen.
Ein veranschaulichender Reparatur-Arbeitsablauf
Das folgende Beispiel erklärt den Prozess; es handelt sich weder um eine Kund Fallstudie noch um eine gemessene Produktdemonstration.
Stellen Sie sich eine Webanwendung vor, die es einem authentifizierten Benutzenden ermöglicht, auf einen Datensatz zuzugreifen, der zu einem anderen Konto gehört. Ein Penetrationstest-Fund identifiziert den betroffenen Vorgang und liefert Beweise für den Zugriffskontrollfehler.
Die entwickelnde Person untersucht die Autorisierungsprüfung und bereitet eine Reparatur vor. Das Team überprüft und testet diese Änderung über den normalen Pull-Request-Prozess. Ein vorgeschlagener Patch ist eine Reparaturkandidatin; das Verhalten der Anwendung muss nach der Bereitstellung weiterhin überprüft werden.
PhaseWer handeltWas zu erfassen istBestätigter FundAikido liefert den Fund; das Team überprüft ihn.Fund-Link, betroffenes Anwendungsverhalten, Reproduktionsnachweis und getestete Version.Verantwortlichkeit der EntwickelndenDas Team weist das bestehende Tracker-Issue zu.Verantwortliche Person und Akzeptanzkriterien: Die unautorisierte Aktion muss fehlschlagen, während der erlaubte Zugriff weiterhin funktioniert.ReparaturDie entwickelnde Person implementiert und überprüft die Änderung.Pull-Request und die Version, die die Reparatur enthält.BereitstellungDas Team stellt in der Bewertungsumgebung bereit.Umgebung und bereitgestellte Version.VerifizierungEin autorisierter Benutzender fordert einen Fund-Nachtest an.Nachtestergebnis und verbleibende Behebungsarbeiten.
Verifizieren Sie die bereitgestellte Reparatur
Stellen Sie die Reparatur in der Bewertungsumgebung bereit, bevor Sie einen Nachtest anfordern. Überprüfen Sie das Ergebnis, bevor Sie das Sicherheitsproblem als gelöst betrachten. Wenn das Problem weiterhin reproduzierbar ist, setzen Sie die Behebung fort und wiederholen Sie die Überprüfung nach der nächsten Reparatur.
Verknüpfen Sie die Nachweise des Retests mit dem Work Item. Ein geschlossenes Ticket im Issue-Tracker und eine erfolgreiche Sicherheitsüberprüfung beantworten unterschiedliche Fragen: Das eine dokumentiert den Workflow-Status, das andere hält fest, was beim Testen der Anwendung passiert ist. Befolgen Sie die Anweisungen zum Find-Retest für die aktuellen Aktionen und Resultatszustände.
Was kann beibehalten werden?
Ihre bestehenden SAST-, SCA- und anderen Sicherheitstools können weiterlaufen. Ihr Repository, Review-Prozess und Tracker können weiterhin die Systeme bleiben, die Ihre Entwickelnde zur Koordinierung von Änderungen nutzen. Die Einführung von Penetrationstests erfordert nicht, den gesamten Security-Stack zu Aikido zu verlegen.
Ein gewisser Installationsaufwand fällt dennoch an: Anwendungszugriff, Scope, Repositories für kontinuierliches Testen, Berechtigungen und Konfiguration der Nutzung. Überprüfen Sie diese Anforderungen für den von Ihnen gewählten Testmodus.
Vergleichen Sie die richtige Art von wiederholten Tests
Eine vollständige Bewertung, ein zielgerichteter Test nach einer Änderung und ein Retest eines bekannten Befunds erfüllen unterschiedliche Zwecke. Wenn Sie ein Produkt für kontinuierliches Penetrationstesten evaluieren, fragen Sie, welcher dieser Tests stattfindet, wodurch er ausgelöst wird und welche Nachweise ausgegeben werden.
Ein erfolgreicher Retest adressiert den überprüften Befund in der getesteten Umgebung. Er stellt für sich genommen keine permanente Regressionsabdeckung für jedes zukünftige Release sicher und beweist auch nicht, dass jede Schwachstelle gefunden wurde.
Führen Sie einen praxisnahen Piloten durch
Wählen Sie eine Anwendung aus und begleiten Sie einen Befund durch Ihren tatsächlichen Entwicklungsprozess. Dokumentieren Sie den Einrichtungsaufwand, manuelle Übergaben, die Qualität der Nachweise und das Ergebnis der Reparaturüberprüfung. Erfinden Sie keinen Befund, falls keiner generiert wird, nur um das Szenario abzuschließen: Nutzen Sie stattdessen eine freigegebene Demoumgebung zur Evaluierung des Workflows.
Beginnen Sie mit der Aikido-Pentest-Einrichtung und konfigurieren Sie anschließend das kontinuierliche Testen, sobald die erste Bewertung und die Voraussetzungen erfüllt sind.