Citrix ADC

XML Externe Entitäten (XXE) Angriffsschutz

Der XXE-Angriffsschutz (XML Externe Entitäten) prüft, ob eine eingehende Payload eine nicht autorisierte XML-Eingabe in Bezug auf Entitäten außerhalb der vertrauenswürdigen Domäne hat, in der sich die Webanwendung befindet. Der XXE-Angriff tritt auf, wenn Sie einen schwachen XML-Parser haben, der eine XML-Nutzlast mit Eingaben analysiert, die Verweise auf externe Entitäten enthalten.

Wenn der XML-Parser in einer Citrix ADC Appliance nicht ordnungsgemäß konfiguriert ist, kann die Ausnutzung der Sicherheitsanfälligkeit gefährlich sein. Es ermöglicht einem Angreifer, sensible Daten auf dem Webserver zu lesen, Denial-of-Service-Angriff durchzuführen und so weiter. Daher ist es wichtig, die Appliance vor XXE-Angriffen zu schützen. Web Application Firewall ist in der Lage, die Appliance vor XXE-Angriffen zu schützen, solange der Inhaltstyp als XML identifiziert wird. Um zu verhindern, dass ein böswilliger Benutzer diesen Schutzmechanismus umgeht, blockiert WAF eine eingehende Anforderung, wenn der “abgeleitete” Inhaltstyp in den HTTP-Headern nicht mit dem Inhaltstyp des Textkörpers übereinstimmt. Dieser Mechanismus verhindert die Umgehung des XXE-Angriffsschutzes, wenn ein Standard- oder nicht standardmäßiger Inhaltstyp auf der Positivliste verwendet wird.

Einige der möglichen XXE-Bedrohungen, die eine Citrix ADC Appliance betreffen, sind:

  • Vertrauliche Datenlecks
  • Denial-of-Service (DOS) Angriffe
  • serverseitige Fälschungsanforderungen
  • Port-Scannen

Funktionsweise des XXE-Schutzes (Externe Entitäten)

  1. Wenn eine eingehende Anforderung vorliegt, untersucht WAF die ersten 512 Bytes der XML-Nutzlast auf etwaige Diskrepanz im Content-Typ-Header und dem Inhaltstyp der Nutzlast.
  2. Wenn die Inhaltstypen übereinstimmen, wird der XXE-Schutz aktiviert und auf die HTTP-Anforderung angewendet.
  3. Wenn der Content-Typ-Header jedoch nicht mit dem Inhaltstyp des Textkörpers übereinstimmt, wird die Anforderung basierend auf der konfigurierten Aktion blockiert, gelöscht oder protokolliert.
  4. Sie können die Protokollierung aktivieren, um Protokollmeldungen zu generieren. Sie können die Protokolle überwachen, um festzustellen, ob Antworten auf legitime Anfragen blockiert werden. Eine große Zunahme der Anzahl von Protokollmeldungen kann auf Versuche hinweisen, einen Angriff zu starten.
  5. Sie können die Statistikfunktion auch aktivieren, um statistische Daten zu Verletzungen und Protokollen zu sammeln. Ein unerwarteter Anstieg im Statistikzähler deutet möglicherweise darauf hin, dass Ihre Anwendung angegriffen wird.

Konfigurieren des XXE-Einspritzschutzes für externe XML-Entitäten

So konfigurieren Sie XML Externe Entitäten (XXE) mit der Befehlsschnittstelle: In der Befehlszeilenschnittstelle können Sie den Profilbefehl der Anwendungsfirewall hinzufügen oder ändern, um die XXE-Einstellungen zu konfigurieren. Sie können die Block-, Protokoll- und Statistikaktionen aktivieren.

Geben Sie an der Eingabeaufforderung Folgendes ein:

set appfw profile <name> [-inferContentTypeXmlPayloadAction <inferContentTypeXmlPayloadAction <block | log | stats | none>]

Hinweis:

Standardmäßig ist die XXE-Aktion als “none” festgelegt.

Beispiel:

set appfw profile profile1 -inferContentTypeXmlPayloadAction Block

Wo sind Aktionstypen:

Blockieren: Die Anforderung wird ohne Ausnahme von den URLs in der Anforderung blockiert.

Log: Wenn eine Nichtübereinstimmung zwischen Inhaltstyp in einem HTTP-Anforderungsheader und Payload auftritt, müssen Informationen über die verletzende Anforderung in der Protokollmeldung enthalten sein.

Statistiken: Wenn eine Nichtübereinstimmung in den Inhaltstypen festgestellt wird, wird die entsprechende Statistik für diesen Verstoßtyp erhöht.

Keine: Es wird keine Aktion ausgeführt, wenn eine Nichtübereinstimmung in Inhaltstypen festgestellt wird. Keine kann nicht mit einem anderen Aktionstyp kombiniert werden. Die Standardaktion ist auf Keine festgelegt.

Konfigurieren der XXE-Einspritzprüfung über die Citrix ADC GUI

Führen Sie die folgenden Schritte aus, um die XXE-Injektionsprüfung zu konfigurieren.

  1. Navigieren Sie zu Sicherheit > Citrix Web App Firewall > Profile.
  2. Wählen Sie auf der Seite Profile ein Profil aus, und klicken Sie auf Bearbeiten.
  3. Wechseln Sie auf der Seite Citrix Web App Firewall Profil zum Abschnitt Erweiterte Einstellungen und klicken Sie auf Sicherheitsprüfungen.

    Abschnitt zur Prüfung externer XML-Entitäten

  4. Wählen Sie im Abschnitt Sicherheitsprüfungen die Option Content-Typ XML Payload ableiten, und klicken Sie auf Aktionseinstellungen.
  5. Legen Sie auf der Seite XML-Payload-Einstellungen für den Ableiten des Inhaltstyps die folgenden Parameter fest:

    1. Aktionen. Wählen Sie eine oder mehrere Aktionen aus, die für die XXE-Injektionssicherheitsprüfung ausgeführt werden sollen.
  6. Klicken Sie auf OK.

    Konfigurieren der Einstellungen für die Überprüfung externer XML-Entitäten

Anzeigen von XXE-Einschleusungsdatenverkehrs und Verstößen

Auf der Seite Statistiken der Citrix Web App Firewall werden Sicherheitsdatenverkehr und Sicherheitsverletzungen in einem tabellarischen oder grafischen Format angezeigt.

So zeigen Sie Sicherheitsstatistiken mithilfe der Befehlsschnittstelle an.

Geben Sie an der Eingabeaufforderung Folgendes ein:

stat appfw profile profile1

Anzeigen von XXE-Injection-Statistiken über die Citrix ADC GUI

Führen Sie die folgenden Schritte aus, um die XXE-Injektionsstatistik anzuzeigen:

  1. Navigieren Sie zu Sicherheit > Citrix Web App Firewall > Profile.
  2. Wählen Sie im Detailbereich ein Web App Firewall Profil aus, und klicken Sie auf Statistik.
  3. Auf der Seite Statistiken der Citrix Web App Firewall werden die Details zum XXE-Befehl Injection Traffic und Verletzungen angezeigt.
  4. Sie können Tabellarische Ansicht auswählen oder zu Graphische Ansicht wechseln, um die Daten in einem tabellarischen oder grafischen Format anzuzeigen.

Statistik der externen Entitätsprüfung von XML-Verletzungen

XML Externe Entitäten (XXE) Angriffsschutz