View a markdown version of this page

Geben Sie Anmeldeinformationen für Penetrationstests an - AWS-Sicherheitsagent

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Geben Sie Anmeldeinformationen für Penetrationstests an

Geben Sie Anmeldeinformationen ein, damit der AWS Security Agent authentifizierte Bereiche Ihrer Webanwendungen testen kann. Ohne Anmeldeinformationen kann der Agent nur öffentlich zugängliche Seiten und APIs testen.

Konfigurieren Sie die Anmeldeinformationen für die Authentifizierung

  1. Suchen Sie im Workflow zur Erstellung von Penetrationstests den Abschnitt Authentifizierungsdaten — optional.

  2. Wählen Sie im Abschnitt Credential #1 Ihre Eingabemethode für Anmeldeinformationen aus:

    • Anmeldeinformationen eingeben — Geben Sie die Anmeldeinformationen direkt ein. Am besten für Entwicklungs- und Testumgebungen geeignet.

    • Erweiterte Einstellung — Verwenden Sie die Verwaltung von AWS-native Anmeldeinformationen. Empfohlen für Produktionsumgebungen und sensible Anmeldeinformationen.

Erweiterte Optionen

Wenn Sie die Option Erweiterte Einstellung auswählen, können Sie aus drei Strategien für Anmeldeinformationen wählen:

  • Übernahme der IAM-Rolle — Für Anwendungen, die die AWS Cognito- oder IAM-Authentifizierung verwenden

  • AWS Secrets Manager — Für die sichere Speicherung von Anmeldeinformationen mit Verschlüsselung und Rotation

  • Lambda-Funktion — Für die dynamische Generierung von Anmeldeinformationen oder komplexe Authentifizierungsabläufe

Geben Sie die Anmeldeinformationen direkt ein

  1. Wählen Sie Anmeldeinformationen eingeben aus.

  2. Geben Sie den Benutzernamen und das Passwort ein.

  3. Wählen Sie in der Dropdownliste Zugriffs-URL die URL aus, unter der diese Anmeldeinformationen verwendet werden sollen. Dies muss aus der Liste der Zielendpunkte ausgewählt werden.

  4. (Optional) Geben Sie im Feld 2FA — optional ein TOTP-Geheimnis für Anwendungen ein, die eine Zwei-Faktor-Authentifizierung erfordern. Führen Sie dazu einen der folgenden Schritte aus:

    • Geben Sie den TOTP-Schlüssel direkt ein (z. B.JBSWY3DPEHPK3PXP) oder geben Sie den vollständigen otpauth://totp/ URI ein (z. B.). otpauth://totp/Example:user@example.com?secret=JBSWY3DPEHPK3PXP&issuer=Example

    • Wählen Sie das Upload-Symbol, um ein QR-Code-Bild von der Einrichtungsseite Ihrer Authenticator-App hochzuladen. Der QR-Code wird lokal gescannt und die TOTP-URI wird automatisch extrahiert.

      Wenn ein TOTP-Geheimnis angegeben wird, generiert der Agent automatisch neue Einmalcodes und gibt sie ein, wenn bei der Anmeldung eine 2FA-Aufforderung erkannt wird.

  5. (Optional) Erweitern Sie die Agent Space-Anmeldeaufforderung, um spezifische Anmeldeanweisungen bereitzustellen, wenn Ihre Anwendung über einen komplexen Authentifizierungsablauf verfügt.

Wichtig

Verwenden Sie Testkonten mit repräsentativem Zugriff anstelle von persönlichen Konten oder Administratorkonten.

Verwenden Sie erweiterte Einstellungen

Wenn Sie eine erweiterte Anmeldeinformationsstrategie (Secrets Manager-, Lambda- oder IAM-Rolle) auswählen, ruft AWS Security Agent Ihre Anmeldeinformationen mithilfe der Servicerolle direkt von der konfigurierten AWS-Ressource ab. Verwenden Sie die Agent Space-Anmeldeaufforderung, um dem Agenten Anweisungen zu geben, wie Sie diese Anmeldeinformationen auf Ihre Anwendung anwenden können — zum Beispiel, zu welcher Anmelde-URL Sie navigieren und welche Formularfelder Sie ausfüllen müssen.

Anmerkung

Secrets Manager Manager-Geheimnisse und Lambda-Funktionen müssen sich in demselben AWS-Konto befinden wie Ihr AWS Security Agent-Setup. Cross-account Anmeldeinformationen werden derzeit nicht unterstützt.

  1. Wählen Sie Erweiterte Einstellung aus.

  2. Wählen Sie in der Dropdownliste Strategie für den Benutzerzugriff eine der folgenden Optionen aus:

Wählen Sie die verfügbare IAM-Rolle aus, die der Agent annehmen soll

Verwenden Sie diese Option für Anwendungen, die AWS Cognito, API Gateway mit IAM-Authentifizierung oder andere AWS-native Authentifizierungssysteme verwenden. Die IAM-Rolle muss über eine Vertrauensbeziehung verfügen, die es dem AWS Security Agent ermöglicht, diese zu übernehmen, sowie über Berechtigungen für den Zugriff auf das Authentifizierungssystem Ihrer Anwendung.

Wählen Sie statische Anmeldeinformationen aus dem verbundenen AWS Secrets Manager aus

Verwenden Sie diese Option, um Anmeldeinformationen mit Verschlüsselung, Rotation und Zugriffsprüfung sicher von AWS Secrets Manager abzurufen.

Die IAM-Rolle muss über secretsmanager:DescribeSecret Berechtigungen secretsmanager:GetSecretValue verfügen.

Der Agent ruft den geheimen Wert direkt von Secrets Manager ab. Verwenden Sie die Agent Space-Anmeldeaufforderung, um dem Agenten mitzuteilen, wie er diese Anmeldeinformationen für den Anmeldeablauf Ihrer Anwendung verwenden soll — beispielsweise, zu welcher URL er navigieren und welche Formularfelder ausgefüllt werden müssen. Sie können ein beliebiges Format zum Speichern Ihres Geheimnisses verwenden, da der Agent das Format anhand der Anweisungen interpretiert, die Sie in der Anmeldeaufforderung angeben.

Wenn der Agent beispielsweise ein username/password Anmeldeformular unter einreichen sollhttps://example.com/login, können Sie Ihr Geheimnis als JSON mit username und password -Feldern formatieren. Wenn für die Anwendung TOTP-based 2FA erforderlich ist, fügen Sie ein totpSecret Feld hinzu, das entweder direkt den TOTP-Schlüssel oder eine vollständige otpauth://totp/ URI enthält:

{ "username": "test-user", "password": "secure-password-here", "totpSecret": "JBSWY3DPEHPK3PXP" }

Konfigurieren Sie dann die Authentifizierungsanweisungen:. Legen Sie die Zugriffs-URL auf fest https://example.com (oder eine andere URL, die aus der Liste der Zielendpunkte ausgewählt wurde). Geben Sie Folgendes in die Agent Space-Anmeldeaufforderung ein: „Navigieren Sie zu dem angegebenen Benutzernamen https://example.com/login und Passwort und geben Sie ihn in das Formular ein.“

Ein weiteres Beispiel: Wenn Sie stattdessen einen API-Schlüssel in einem HTTP-Header angeben möchten, können Sie ihn als Klartext speichern:

"api-key-here"

Konfigurieren Sie dann die Authentifizierungsanweisungen:. Geben Sie Folgendes in die Agent Space-Anmeldeaufforderung ein: „Setzen Sie den X-API-Key Header für alle Anfragen auf den bereitgestellten API-Schlüssel.“

Wichtig

Nur TOTP-based 2FA wird unterstützt. SMS, E-Mail, Push-Benachrichtigungen, Hardwareschlüssel und OAuth-Authentifizierung werden nicht unterstützt.

Wählen Sie die verfügbare Lambda-Funktion aus, um Anmeldeinformationen dynamisch abzurufen

Verwenden Sie diese Option für komplexe Authentifizierungssysteme, die dynamische Generierung von Anmeldeinformationen oder die Integration mit externen Identitätsanbietern.

Die IAM-Rolle muss über lambda:InvokeFunction Berechtigungen verfügen und die Funktion muss innerhalb von 30 Sekunden abgeschlossen sein.

Wenn der Penetrationstest ausgeführt wird, ruft der AWS Security Agent Ihre AWS Lambda Lambda-Funktion synchron auf und übergibt ein Ereignis, das den Penetrationstest und die spezifischen Anmeldeinformationen identifiziert, die aufgelöst werden:

{ "pentest_arn": "arn:aws:securityagent:us-west-2:111122223333:pentest/pt-abcd1234-5678-90ab-cdef-EXAMPLE11111", "actor_identifier": "Credential1" }
  • pentest_arn— Der Amazon-Ressourcenname (ARN) des Penetrationstests, für den die Anmeldeinformationen aufgelöst werden. Verwenden Sie ihn, um die Anfrage innerhalb Ihrer Funktion zu spezifizieren, zu autorisieren oder zu prüfen.

  • actor_identifier— Der Name der Anmeldeinformationen, den Sie diesen Anmeldeinformationen in der Konsole zugewiesen haben (z. B.). Credential1 Verwenden Sie ihn, um die richtigen Anmeldeinformationen zurückzugeben, wenn eine einzelne Funktion mehrere Anmeldeinformationen verwendet.

Der Agent verwendet die Ausgabe der Funktion direkt als Anmeldeinformationen. Verwenden Sie die Agent Space-Anmeldeaufforderung, um dem Agenten mitzuteilen, wie er diese Anmeldeinformationen auf Ihre Anwendung anwenden soll, genauso wie Sie es mit AWS Secrets Manager tun würden. Beispiele Wählen Sie statische Anmeldeinformationen aus dem verbundenen AWS Secrets Manager aus zur Formatierung der Ausgabe Ihrer Lambda-Funktion und zu unterstützten Authentifizierungstypen finden Sie unter.

Konfigurieren Sie mehrere Anmeldeinformationen

So testen Sie verschiedene Benutzerrollen oder Authentifizierungssysteme:

  1. Wählen Sie Weitere Anmeldeinformationen hinzufügen aus.

  2. Konfigurieren Sie die zusätzlichen Anmeldeinformationen mit einer der Eingabemethoden.

  3. Um Anmeldeinformationen zu entfernen, wählen Sie im Abschnitt Anmeldeinformationen die Option Entfernen aus.

Optimierung der Anmeldung

Die Anmeldungsoptimierung ermöglicht es dem AWS Security Agent, Navigationsmuster aus früheren Pentest-Läufen zu lernen und sie auf nachfolgende Läufe anzuwenden. Zu diesen Mustern gehören Anmeldeabläufe und mehrstufige Authentifizierungsworkflows. Dies reduziert die Zeit, die der Agent damit verbringt, erneut herauszufinden, wie er sich authentifizieren kann, was zu schnelleren Scans und einer konsistenteren Testabdeckung führt.

So funktioniert die Login-Optimierung

Beim ersten Pentest-Lauf erkennt der Agent, wie er mithilfe der von Ihnen angegebenen Anmeldeinformationen im Anmeldeablauf Ihrer Anwendung navigieren kann. Es zeichnet die erfolgreichen Navigationsschritte auf und generiert eine Skill-Datei, die den erlernten Anmeldeablauf erfasst.

Bei nachfolgenden Läufen liest der Agent die gespeicherte Skill-Datei und wendet das erlernte Navigationsmuster direkt an, wodurch die Erkennungsphase übersprungen wird. Das bedeutet Folgendes:

  • Schnellere Durchführung authentifizierter Tests — der Agent wendet bewährte Navigationsmuster sofort an, anstatt alles von Grund auf neu zu untersuchen

  • Konsistenteres Verhalten — der Agent folgt demselben bewährten Weg, anstatt nach Alternativen zu suchen

Anmerkung

Die Anmeldeoptimierung lernt während der ersten Anmeldesitzung innerhalb eines Laufs. Nachfolgende Anmeldesitzungen im selben Lauf profitieren von dem, was in der ersten Sitzung gelernt wurde. Bei future Läufen profitieren alle Anmeldesitzungen von der gespeicherten Fähigkeit.

Aktivieren oder deaktivieren Sie die Login-Optimierung

Die Login-Optimierung ist standardmäßig aktiviert. Um es zu deaktivieren oder erneut zu aktivieren:

  1. Navigieren Sie in der Pentest-Konfiguration zum Abschnitt Authentifizierungsdaten — optional.

  2. Suchen Sie den Schalter „Login-Optimierung“.

  3. Um die Login-Optimierung zu aktivieren, schalten Sie den Schalter ein. Um ihn zu deaktivieren, schalten Sie ihn aus.

Wenn diese Option deaktiviert ist, erkennt der Agent den Anmeldefluss bei jedem Lauf von Grund auf neu. Zuvor erlernte Navigationsfähigkeiten bleiben erhalten und werden erneut angewendet, wenn die Funktion erneut aktiviert wird.

Tipp

Wenn sich der Anmeldeablauf Ihrer Anwendung erheblich ändert (z. B. eine neu gestaltete Anmeldeseite oder ein neuer Authentifizierungsschritt), passt sich der Agent automatisch an, indem er seine erlernten Fähigkeiten beim nächsten Lauf aktualisiert. Sie müssen die Optimierung nicht manuell zurücksetzen.