View a markdown version of this page

Überprüfen Sie die Ergebnisse zur Codesicherheit in Pull-Requests - 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.

Überprüfen Sie die Ergebnisse zur Codesicherheit in Pull-Requests

Nachdem Sie die Codeüberprüfung für Pull-Anfragen für Ihre Repositorys aktiviert haben, analysiert der AWS Security Agent automatisch Pull-Anfragen und veröffentlicht Sicherheitsergebnisse direkt an Ihren Quellcodekontrollanbieter. Auf diese Weise können Entwickler Sicherheitsprobleme innerhalb ihres normalen Workflows lösen, ohne den Pull-Request verlassen zu müssen.

Anmerkung

Diese Seite bezieht sich auf GitHub Pull-Requests, GitLab Merge-Requests und Bitbucket-Pull-Requests. Die Erfahrung ist bei allen Anbietern ähnlich.

Wie funktioniert die Codeüberprüfung bei Pull-Requests

Wenn Sie eine Pull-Anfrage (oder eine Merge-Anfrage in GitLab) in einem Repository mit aktiviertem Code-Review einreichen, beginnt der AWS Security Agent automatisch mit der Analyse.

  1. Auslöser für die Pull-Request-Analyse — Die Codeüberprüfung wird ausgelöst, wenn eine Pull-Anfrage in Repositorys, in denen Sie die Code-Review-Funktion aktiviert haben, als „Bereit zur Überprüfung“ markiert ist. Pull-Request-Entwürfe werden nicht analysiert.

  2. Bestätigung der Analyse — Wenn der AWS Security Agent mit der Analyse Ihrer Pull-Anfrage beginnt, wird ein erster Kommentar veröffentlicht: „AWS Security Agent analysiert Ihren Code...“ Dadurch wissen Sie, dass die Analyse gestartet wurde und noch läuft.

  3. Abschluss der Überprüfung — Nach Abschluss der Analyse veröffentlicht der AWS Security Agent eine Überprüfung Ihrer Pull-Anfrage mit den Ergebnissen. Alle Sicherheitsergebnisse werden in einer einzigen Überprüfung zusammengefasst, um Ihre Pull-Anfrage zu organisieren und die Anzahl der Benachrichtigungen zu minimieren.

Die Ergebnisse von Code-Reviews verstehen

AWS Security Agent liefert unterschiedliche Arten von Ergebnissen, je nachdem, was er bei der Analyse findet.

Wenn Sicherheitsprobleme gefunden werden

Wenn der AWS Security Agent Sicherheitsprobleme in Ihren Codeänderungen feststellt, veröffentlicht er eine Überprüfung, die Folgendes beinhaltet:

  • Zusammenfassung — Ein allgemeiner Überblick über alle Sicherheitsfeststellungen, in dem die Arten der identifizierten Probleme und ihre möglichen Auswirkungen beschrieben werden

  • Einzelne Ergebnisse — Die detaillierten Sicherheitsergebnisse werden in Form von Thread-Kommentaren unter der Hauptüberprüfung angezeigt, wobei jedes Ergebnis Folgendes beinhaltet:

    • Beschreibung des Sicherheitsproblems

    • Stelle in Ihrem Code, an der das Problem gefunden wurde

    • Anleitung zur Problembehebung, in der erklärt wird, wie das Problem behoben werden kann

    • Relevanter Kontext, der auf Ihren Einstellungen für die Codeüberprüfung basiert (Verstöße gegen Sicherheitsanforderungen, allgemeine Sicherheitslücken oder beides)

Anmerkung

Die Art der analysierten Sicherheitsprobleme hängt von Ihren Einstellungen für die Codeüberprüfung ab. Wenn Sie die Überprüfung von Sicherheitsanforderungen konfiguriert haben, beziehen sich die Ergebnisse auf die individuellen Sicherheitsanforderungen Ihres Unternehmens. Wenn Sie die Ergebnisse von Sicherheitslücken konfiguriert haben, werden anhand der Ergebnisse häufig auftretende Sicherheitslücken identifiziert. Weitere Informationen zu den Einstellungen für die Codeüberprüfung finden Sie unterPull-Request-Code-Review für GitHub Repositorys aktivieren.

Wenn keine Sicherheitsprobleme gefunden wurden

Wenn der AWS Security Agent die Analyse abschließt und keine Sicherheitsprobleme in Ihren Codeänderungen feststellt, veröffentlicht er einen Kommentar: „Es wurden keine Probleme identifiziert.“ Dadurch wird bestätigt, dass die Überprüfung erfolgreich abgeschlossen wurde und Ihre Codeänderungen aufgrund Ihrer konfigurierten Einstellungen für die Codeüberprüfung keine Sicherheitsfeststellungen ausgelöst haben.

Auf Sicherheitsfeststellungen reagieren

Nachdem Sie die vom AWS Security Agent veröffentlichten Sicherheitsergebnisse überprüft haben, können Sie direkt bei Ihrem Quellcodekontrollanbieter Maßnahmen ergreifen.

  • Behebung von Ergebnissen — Aktualisieren Sie Ihren Code auf der Grundlage der in den Ergebnissen enthaltenen Hinweise zur Problembehebung und fügen Sie dann neue Commits zur Pull-Anfrage hinzu. Der AWS Security Agent analysiert den aktualisierten Code.

  • Konversationen lösen — Nachdem Sie eine Sicherheitslücke behoben haben, markieren Sie die Konversation als gelöst, um Ihren Fortschritt zu verfolgen.

Tipp

Jedes Ergebnis beinhaltet spezifische Anleitungen zur Behebung, die auf das identifizierte Sicherheitsproblem zugeschnitten sind. Lesen Sie sich diese Leitlinien sorgfältig durch, um das Sicherheitsrisiko zu verstehen und zu erfahren, wie es wirksam angegangen werden kann.

Filterung der Ergebnisse von Code-Reviews

Sie können anpassen, wie der AWS Security Agent Ihren Code analysiert, indem Sie Ihrem Repository eine filtering.md Datei hinzufügen. Mit dieser Datei können Sie Fehlalarme reduzieren, indem Sie Kontext zu Ihrer Codebasis bereitstellen und Dateien oder Ordner von der Analyse ausschließen.

Die Filterdatei wird erstellt

Erstellen Sie eine Datei mit dem Namen filtering.md im .awssecurityagent Verzeichnis im Stammverzeichnis Ihres Repositorys:

.awssecurityagent/filtering.md

AWS Security Agent liest diese Datei bei der Analyse von Pull-Anfragen aus dem Hauptzweig Ihres Repositorys (z. B. main odermainline).

Dateistruktur

Die filtering.md Datei verwendet die Standard-Markdown-Formatierung mit bestimmten Abschnitten, die der AWS Security Agent erkennt. Die Datei muss eine Code Review Überschrift enthalten, gefolgt von einem oder beiden der folgenden Abschnitte: IgnorePatterns und ContextHints (kein Leerzeichen).

Das folgende Beispiel zeigt die vollständige Struktur einer filtering.md Datei:

# filtering.md

## Code Review

### IgnorePatterns

**/*.md

/myapp/src/**/*.snap

/myapp/config/README

### ContextHints

- The backend is a trusted system and won't return non-standard protocols.
- URL is generated from server with presigned token, so no SSRF security vulnerabilities.
- AppSec has verified that we are allowed to use cache with an eviction policy.

Ignoriere Muster

IgnorePatternsIn diesem Abschnitt werden Dateien und Ordner angegeben, die der AWS Security Agent bei der Codeüberprüfung überspringen sollte. Wird verwendetglob patterns, um zu definieren, welche Pfade von der Analyse ausgeschlossen werden sollen.

Anforderungen an das Format:

  • Jedes Muster muss sich in einer eigenen Zeile befinden.

  • Trennen Sie jedes Muster durch eine Leerzeile dazwischen. Dadurch wird sichergestellt, dass die Datei korrekt gerendert wird, wenn sie in unseren GitHub Tools zur Codeüberprüfung angezeigt wird.

  • Muster folgen dem Standard-Glob-Format. **/*.mdEntspricht beispielsweise allen Markdown-Dateien und /myapp/src/**/*.snap entspricht allen .snap Dateien innerhalb des /myapp/src/ Ordners im Stammverzeichnis.

  • In diesem Abschnitt werden bis zu 1000 Ignoriermuster unterstützt.

Hinweise zum Kontext

Dieser ContextHints Abschnitt bietet zusätzlichen Kontext zu Ihrer Codebasis, der dem AWS Security Agent hilft, genauere Einschätzungen vorzunehmen. Verwenden Sie Kontexthinweise, um Architekturentscheidungen, Sicherheitsausnahmen oder andere Informationen zu erläutern, die sich auf die Interpretation der Ergebnisse auswirken könnten.

Anforderungen an das Format:

  • Jeder Hinweis muss mit einem Gedankenstrich (-) gefolgt von einem Leerzeichen beginnen.

  • Schreiben Sie jeden Hinweis als eine einzelne Zeile Freiformtext, die auf 500 Zeichen begrenzt ist.

  • Jeder Hinweis sollte einen bestimmten Kontext zu Ihrer Codebasis beschreiben.

  • In diesem Abschnitt werden bis zu 20 Kontexthinweise unterstützt.

Kontexthinweise werden angewendet, nachdem der AWS Security Agent seine erste Analyse abgeschlossen hat, und helfen so dabei, Ergebnisse herauszufiltern, die nicht auf Ihren speziellen Anwendungsfall zutreffen.

Nächste Schritte

Nach der Überprüfung der Ergebnisse zur Codesicherheit:

  • Aktualisieren Sie Ihren Code auf der Grundlage von Anleitungen zur Problembehebung

  • Pushen Sie neue Commits, um eine erneute Analyse Ihrer Änderungen auszulösen

  • Passen Sie bei Bedarf die Einstellungen für die Codeüberprüfung an (siehe) Pull-Request-Code-Review für GitHub Repositorys aktivieren

  • Informieren Sie sich über die Sicherheitsanforderungen Ihres Unternehmens, um die Validierungskriterien zu verstehen

  • Ziehen Sie Penetrationstests für eine umfassende Sicherheitsvalidierung der bereitgestellten Anwendungen in Betracht