Kapitel 30. Verteidigung gegen XXE

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Im Allgemeinen lässt sich XXE leicht abwehren: Deaktiviere einfach externe Entitäten in deinem XML-Parser (siehe Abbildung 30-1). Wie das gemacht wird, hängt von dem jeweiligen XML-Parser ab, aber in der Regel ist es nur eine einzige Zeile in der Konfiguration:

factory.setFeature("http://apache.org/xml/features/disallow-doctype-decl", true);

XXE wird von OWASP als besonders gefährlich für Java-basierte XML-Parser bezeichnet, da XXE bei vielen standardmäßig aktiviert ist. Je nach Sprache und Parser, auf den du dich verlässt, kann es sein, dass XXE standardmäßig deaktiviert ist. Du solltest immer in der API-Dokumentation deines XML-Parsers nachsehen, um sicherzugehen. Gehe nicht einfach davon aus, dass es standardmäßig deaktiviert ist.

xxe
Abbildung 30-1. XXE-Angriffe lassen sich leicht abwehren, indem du deinen XML-Parser richtig konfigurierst

Andere Datenformate auswerten

Je nach Anwendungsfall kann es möglich sein, die Anwendung so umzugestalten, dass sie auf einem anderen Datenformat als XML basiert. Eine solche Änderung könnte die Codebasis vereinfachen und gleichzeitig das XXE-Risiko beseitigen. In der Regel kann XML unter gegen JSON ausgetauscht werden, so dass JSON bei der Betrachtung anderer Formate als Standard ...

Get Web Application Security, 2. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.