So sichern Sie Webanwendungen mit AWS WAF



In diesem Artikel erfahren Sie, wie Sie Webanwendungen mit AWS WAF sichern und anschließend eine praktische Demonstration durchführen können.

In diesem Artikel erfahren Sie, wie Sie Webanwendungen mit sichern können WAF und anschließend eine praktische Demonstration. Die folgenden Hinweise werden in diesem Artikel behandelt:

Also fangen wir an,





Fahren Sie mit diesem Artikel über 'So sichern Sie Webanwendungen mit AWS WAF?' Fort.

Erste Schritte mit einigen Grundlagen

AWS bietet Services wie EC2, ELB (Elastic Load Balancer), S3 (Simple Storage Service) und EBS (Elastic Block Storage), um nützliche und ausgefallene Anwendungen schnell und mit weniger CAPEX (CAPital EXpenditure) zu erstellen. Beim Erstellen dieser Anwendungen ist es ebenso wichtig, die Anwendung zu sichern und die Daten zu schützen. Wenn sie nicht ordnungsgemäß gesichert sind, geraten die Anwendungsdaten möglicherweise in die falschen Hände, wie im Fall der letzten Capital One Vorfall .



Capital One hat eine Webanwendung auf EC2 gehostet und diese wurde nicht ordnungsgemäß gesichert. Ein ehemaliger AWS-Mitarbeiter konnte diese Sicherheitsanfälligkeit ausnutzen und unzählige Kundendaten von S3 herunterladen. Später wurde festgestellt, dass die Daten von 30 anderen Organisationen ebenfalls von AWS heruntergeladen wurden. Um es noch einmal zu betonen, reicht es nicht nur aus, eine Anwendung zu entwerfen und zu entwerfen, sondern es ist auch wichtig, eine Anwendung zu sichern.

Capital One verwendet AWS WAF (Web Application Firewall) um die Webanwendung zu schützen, aber sie wurde nicht richtig konfiguriert, wodurch der Hacker auf die Daten in S3 zugreifen und sie herunterladen konnte. In diesem Artikel erfahren Sie, wie Sie AWS WAF zum Schutz vor häufigen Webangriffen wie SQL Injection, XSS (Cross Site Scripting) usw. verwenden und konfigurieren. AWS WAF muss zusammen mit konfiguriert werden Application Load Balancer , CloudFront oder API Gateway. In diesem Szenario verwenden wir den Application Load Balancer. Jede Anfrage des Kunden über den Browser wird über die AWS WAF und dann an den Application Load Balancer und schließlich an die Webanwendung auf dem EC2 gesendet. AWS WAF kann verwendet werden Blockieren Sie die böswillige Anfrage von den Hackern unter Verwendung einer Reihe von Regeln und Bedingungen.

Image - Sichere Webanwendungen mit AWS WAF - Edureka

Fahren Sie mit diesem Artikel über 'So sichern Sie Webanwendungen mit AWS WAF?' Fort.



Reihenfolge der Schritte, um mit AWS WAF zu beginnen

Schritt 1: Erstellen einer anfälligen Webanwendung,

Der erste Schritt besteht darin, eine Webanwendung zu erstellen, die für SSRF-Angriffe (Server Side Request Forgery) anfällig ist Blog darüber, wie der Angriff von Capital One passiert ist. Dieser Blog enthält die folgenden Schritte:

  1. Erstellen Sie eine EC2
  2. Installieren Sie die erforderliche Software, um die Webanwendung mit SSRF-Sicherheitsanfälligkeit zu erstellen
  3. Erstellen und IAM-Rolle mit schreibgeschützten S3-Berechtigungen
  4. Verbinden Sie die IAM-Rolle mit EC2
  5. Nutzen Sie schließlich die SSRF-Sicherheitsanfälligkeit aus, um die Sicherheitsanmeldeinformationen für die IAM-Rolle abzurufen.

Sobald die Abfolge der Schritte im genannten Blog abgeschlossen ist, ersetzen Sie 5.6.7.8 durch die öffentliche IP-Adresse des EC2 in der folgenden URL und öffnen Sie sie im Browser. Die mit der IAM-Rolle verknüpften Sicherheitsanmeldeinformationen sollten wie unten gezeigt im Browser angezeigt werden. So wurde Capital One im Grunde genommen gehackt. Mit den vorhandenen Sicherheitsanmeldeinformationen konnte der Hacker auf andere AWS-Services wie S3 zugreifen, um die Daten herunterzuladen.

http://5.6.7.8:80?url=http://169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

Schritt 2: Erstellen des Application Load Balancer

AWS WAF kann keiner Webanwendung direkt zugeordnet werden. Kann jedoch nur mit Application Load Balancer, CloudFront und API Gateway verknüpft werden. In diesem Tutorial würden wir das erstellen Application Load Balancer und Zuordnen der AWS WAF mit dem gleichen.

Schritt 2a: Eine Zielgruppe ist eine Sammlung von EC2-Instanzen und muss vor dem Erstellen des Application Load Balancer erstellt werden. Klicken Sie in der EC2-Verwaltungskonsole im linken Bereich auf die Zielgruppe und dann auf „Zielgruppe erstellen“.

Schritt 2b: Geben Sie den Namen der Zielgruppe ein und klicken Sie auf 'Erstellen'. Die Zielgruppe wird erfolgreich erstellt.

Schritt 2c: Stellen Sie sicher, dass die Zielgruppe ausgewählt ist, klicken Sie auf die Registerkarte Ziele und dann auf Bearbeiten, um EC2-Instanzen bei der Zielgruppe zu registrieren.

Schritt 2d: Wählen Sie die EC2-Instanz aus und klicken Sie auf 'Zu registrierten hinzufügen' und dann auf 'Speichern'.

Unterschied zwischen Überladen und Überschreiben in Java

Die Instanzen sollten wie unten gezeigt für die Zielgruppe registriert werden.

Schritt 2e: Zeit zum Erstellen des Application Load Balancer. Klicken Sie im linken Bereich der EC2 Management Console auf den Load Balancer und dann auf „Load Balancer erstellen“.

Klicken Sie auf 'Erstellen' für den 'Application Load Balancer'.

Fahren Sie mit diesem Artikel über 'So sichern Sie Webanwendungen mit AWS WAF?' Fort.

Schritt 2f: Geben Sie den Namen des Application Load Balancer ein. Stellen Sie sicher, dass alle Verfügbarkeitszonen ausgewählt sind, und klicken Sie auf Weiter.

Schritt 2g: Klicken Sie unter 'Sicherheitseinstellungen konfigurieren' auf Weiter.

Erstellen Sie unter 'Sicherheitsgruppen konfigurieren' eine neue Sicherheitsgruppe oder wählen Sie eine der vorhandenen Sicherheitsgruppen aus. Stellen Sie sicher, dass Port 80 für den Zugriff auf die Webseite des EC2 geöffnet ist. Klicken Sie auf Weiter.

Schritt 2h: Wählen Sie unter 'Routing konfigurieren' die Option 'Vorhandene Zielgruppe' aus und wählen Sie diejenige aus, die im vorherigen Schritt erstellt wurde. Klicken Sie auf Weiter.

Schritt 2i: Die Ziel-EC2-Instanzen wurden bereits als Teil der Zielgruppen registriert. Klicken Sie auf der Registerkarte 'Ziel registrieren' ohne Änderungen auf 'Weiter'.

Schritt 2j: Überprüfen Sie abschließend alle Details des Application Load Balancer und klicken Sie auf Erstellen. Der Application Load Balancer wird wie unten gezeigt erstellt.

virtuelle c ++ - Funktion = 0

Schritt 2k: Rufen Sie den Domainnamen des Application Load Balancer ab, ersetzen Sie den markierten Text in der folgenden URL und öffnen Sie ihn im Browser. Beachten Sie, dass wir über den Application Load Balancer auf die Webanwendung zugreifen und die Sicherheitsanmeldeinformationen wie unten gezeigt angezeigt werden. Die folgende URL kann mithilfe von AWS WAF blockiert werden, wie in den folgenden Schritten gezeigt, um das Durchsickern der Sicherheitsanmeldeinformationen zu verhindern.

MyALB-1929899948.us-east-1.elb.amazonaws.com ? url = http: //169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

Schritt 3: Erstellen der AWS WAF (Web Application Firewall)

Schritt 3a: Rufen Sie die AWS WAF Management Console auf und klicken Sie auf 'Web-ACL konfigurieren'. Die AWS WAF-Übersicht wird angezeigt. Hier ist die Hierarchie von AWS WAF. Web-ACL enthält eine Reihe von Regeln und Regeln enthalten eine Reihe von Bedingungen, die wir in den folgenden Schritten erstellen würden. Klicken Sie auf Weiter.

Schritt 3b: Geben Sie den Web-ACL-Namen, die Region als North Virginia (oder den Ort, an dem EC2 erstellt wurde) und den Ressourcentyp als „Application Load Balancer“ ein und wählen Sie schließlich den Application Load Balancer aus, der im vorherigen Schritt erstellt wurde. Klicken Sie auf Weiter.

Schritt 3c: Hier ein Bedingung zum Blockieren einer bestimmten Webanwendungsanforderung muss erstellt werden. Scrollen Sie nach unten und klicken Sie auf 'Bedingung erstellen' für die 'Übereinstimmungsbedingungen für Zeichenfolgen und Regex'.

Schritt 3d: Geben Sie den Namen der Bedingung, den Typ als 'String-Übereinstimmung', den Filter für 'Alle Abfrageparameter' und die restlichen Parameter genau wie unten gezeigt ein. Klicken Sie auf 'Filter hinzufügen' und dann auf 'Erstellen'. Hier versuchen wir, eine Bedingung zu erstellen, die mit der URL übereinstimmt, die den Wert des Abfrageparameters als 169.254.169.254 enthält. Diese IP-Adresse bezieht sich auf die EC2-Metadaten .

Schritt 3e: Jetzt ist es an der Zeit, eine Regel zu erstellen, die eine Sammlung von Bedingungen darstellt. Klicken Sie auf 'Regel erstellen' und geben Sie die Parameter wie unten gezeigt genau an. Klicken Sie auf 'Bedingung hinzufügen', 'Erstellen' und 'Überprüfen und erstellen'.

Fahren Sie mit diesem Artikel über 'So sichern Sie Webanwendungen mit AWS WAF?' Fort.

Schritt 3f: Überprüfen Sie abschließend alle Details und klicken Sie auf 'Bestätigen und erstellen'. Die Web-ACL (Access Control List) wird wie unten gezeigt erstellt und dem Application Load Balancer zugeordnet.

Schritt 3g: Versuchen Sie nun, über den Browser auf die Application Load Balancer-URL zuzugreifen, wie in ausgeführt Schritt 2k . Dieses Mal erhalten wir '403 Forbidden', da unsere URL der Web-ACL-Bedingung entspricht und wir sie blockieren. Die Anforderung erreicht niemals den Application Load Balancer oder die Webanwendung auf dem EC2. Hier stellen wir fest, dass die Anwendung zwar den Zugriff auf die Sicherheitsanmeldeinformationen zulässt, diese jedoch blockiert.

Schritt 4: Bereinigen der in diesem Lernprogramm erstellten AWS-Ressourcen. Die Reinigung muss in genau der unten angegebenen Reihenfolge erfolgen. Auf diese Weise wird sichergestellt, dass AWS die Abrechnung der zugehörigen Ressourcen stoppt, die im Rahmen dieses Lernprogramms erstellt wurden.

  • Bedingung in der Regel löschen
  • Löschen Sie die Regel in der WebACL
  • Trennen Sie die ALB in der WebACL
  • Löschen Sie WebACL
  • Löschen Sie die Regel
  • Löschen Sie den Filter in der Bedingung
  • Löschen Sie die Bedingung
  • Löschen Sie die ALB und die Zielgruppe
  • Beenden Sie den EC2
  • Löschen Sie die IAM-Rolle

Fazit

Wie bereits erwähnt, ist das Erstellen einer Webanwendung mit AWS sehr einfach und interessant. Wir müssen aber auch sicherstellen, dass die Anwendung sicher ist und die Daten nicht in die falschen Hände gelangen. Die Sicherheit kann auf mehreren Ebenen angewendet werden. In diesem Tutorial haben wir gesehen, wie die Webanwendung mithilfe der AWS WAF (Web Application Firewall) vor Angriffen wie dem Abgleich mit der IP-Adresse der EC2-Metadaten geschützt wird. Wir hätten WAF auch zum Schutz vor häufigen Angriffen wie SQL Injection und XSS (Cross Site Scripting) verwenden können.

Die Verwendung von AWS WAF oder eines anderen Sicherheitsprodukts macht die Anwendung nicht sicher, aber das Produkt muss ordnungsgemäß konfiguriert sein. Wenn sie nicht richtig konfiguriert sind, geraten die Daten möglicherweise in die falschen Hände, wie dies bei Capital One und anderen Organisationen der Fall war. Die andere wichtige Sache, die berücksichtigt werden muss, ist, dass die Sicherheit vom ersten Tag an berücksichtigt werden muss und nicht zu einem späteren Zeitpunkt in die Anwendung eingesteckt werden muss.

Dies bringt uns zum Ende dieses Artikels zum Sichern von Webanwendungen mit AWS WAF. Wir haben auch einen Lehrplan erstellt, der genau das abdeckt, was Sie benötigen, um die Solution Architect-Prüfung zu bestehen! Sie können sich die Kursdetails für ansehen Ausbildung.

Hast du eine Frage an uns? Bitte erwähnen Sie es im Kommentarbereich dieses AWS-Blogs. Wir werden uns dann bei Ihnen melden.