Sichere Kodierungstechniken: Verarbeitung von XML-Daten, Teil 1
Extensible Markup Language (XML) ist eine Auszeichnungssprache, die zur Codierung von Dokumenten in einem Format verwendet wird, das sowohl für Maschinen einfach zu handhaben als auch für Menschen lesbar ist. Allerdings enthält dieses häufig verwendete Format mehrere Sicherheitslücken. In diesem ersten Blog-Beitrag zum Thema XML erkläre ich die Grundlagen der sicheren Handhabung von XML-Dokumenten mit Hilfe eines Schemas.
OWASP unterteilt die verschiedenen Sicherheitslücken im Zusammenhang mit XML und XML-Schemas in zwei Kategorien.
Missgebildete XML-Dokumente
Missgebildete XML-Dokumente sind Dokumente, die nicht den W3C-XML-Spezifikationen entsprechen. Einige Beispiele, die zu einem fehlerhaften Dokument führen, sind das Entfernen eines End-Tags, das Ändern der Reihenfolge verschiedener Elemente oder die Verwendung von verbotenen Zeichen. Alle diese Fehler sollten zu einem schwerwiegenden Fehler führen und das Dokument sollte keine weitere Verarbeitung erfahren.
Um Schwachstellen durch missgebildete Dokumente zu vermeiden, sollten Sie einen gut getesteten XML-Parser verwenden, der den W3C-Spezifikationen folgt und nicht wesentlich länger braucht, um missgebildete Dokumente zu verarbeiten.
Ungültige XML-Dokumente
Ungültige XML-Dokumente sind wohlgeformt, enthalten aber unerwartete Werte. Hier kann sich ein Angreifer Anwendungen zunutze machen, die nicht ordnungsgemäß ein XML-Schema definieren, um zu erkennen, ob Dokumente gültig sind. Nachfolgend finden Sie ein einfaches Beispiel für ein Dokument, das, wenn es nicht korrekt validiert wird, unbeabsichtigte Folgen haben kann.
Ein Webspeicher, der seine Transaktionen in XML-Daten speichert:
<purchase></purchase>
<id>123</id>
<price>200</price>
And the user only has control over the <id> value. It is then possible, without the right counter measures, for an attacker to input something like this:</id>
<purchase></purchase>
<id>123</id>
<price>0</price>
<id></id>
<price>200</price>
If the parser that processes this document only reads the first instance of the <id> and <price> tags this will lead to unwanted results. </price></id>

Es ist auch möglich, dass das Schema nicht restriktiv genug ist oder dass die sonstige Eingabevalidierung unzureichend ist, so dass negative Zahlen, spezielle Dezimalzahlen (wie NaN oder Infinity) oder übermäßig große Werte eingegeben werden können, wo sie nicht erwartet werden, was zu ähnlichem unbeabsichtigtem Verhalten führt.
Um Schwachstellen im Zusammenhang mit ungültigen XML-Dokumenten zu vermeiden, sollte ein präzises und restriktives XML-Schema definiert werden, um Probleme durch unsachgemäße Datenvalidierung zu vermeiden.
Im nächsten Blog-Beitrag werden wir auf einige fortgeschrittenere Angriffe auf XML-Dokumente eingehen, wie z.B. Jumbo Payloads und die gefürchtete OWASP Top Ten Nummer vier, XXE.
In der Zwischenzeit können Sie Ihre Kenntnisse über die XML-Eingabevalidierung auf unserem Portalvertiefen oder herausfordern .
Die Spezifikationen für XML und XML-Schemas enthalten mehrere Sicherheitslücken. Gleichzeitig stellen diese Spezifikationen die Tools bereit, die zum Schutz von XML-Anwendungen erforderlich sind. Auch wenn wir XML-Schemas verwenden, um die Sicherheit von XML-Dokumenten zu definieren, können sie für eine Vielzahl von Angriffen verwendet werden: Dateiabruf, serverseitige Request Forgery, Port-Scanning oder Brute Forcing.


Die Spezifikationen für XML und XML-Schemas enthalten mehrere Sicherheitslücken. Gleichzeitig stellen diese Spezifikationen die Tools bereit, die zum Schutz von XML-Anwendungen erforderlich sind. Auch wenn wir XML-Schemas verwenden, um die Sicherheit von XML-Dokumenten zu definieren, können sie für eine Vielzahl von Angriffen verwendet werden.
Anwendungssicherheitsforscher - F&E-Ingenieur - PhD-Kandidat

Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenAnwendungssicherheitsforscher - F&E-Ingenieur - PhD-Kandidat


Extensible Markup Language (XML) ist eine Auszeichnungssprache, die zur Codierung von Dokumenten in einem Format verwendet wird, das sowohl für Maschinen einfach zu handhaben als auch für Menschen lesbar ist. Allerdings enthält dieses häufig verwendete Format mehrere Sicherheitslücken. In diesem ersten Blog-Beitrag zum Thema XML erkläre ich die Grundlagen der sicheren Handhabung von XML-Dokumenten mit Hilfe eines Schemas.
OWASP unterteilt die verschiedenen Sicherheitslücken im Zusammenhang mit XML und XML-Schemas in zwei Kategorien.
Missgebildete XML-Dokumente
Missgebildete XML-Dokumente sind Dokumente, die nicht den W3C-XML-Spezifikationen entsprechen. Einige Beispiele, die zu einem fehlerhaften Dokument führen, sind das Entfernen eines End-Tags, das Ändern der Reihenfolge verschiedener Elemente oder die Verwendung von verbotenen Zeichen. Alle diese Fehler sollten zu einem schwerwiegenden Fehler führen und das Dokument sollte keine weitere Verarbeitung erfahren.
Um Schwachstellen durch missgebildete Dokumente zu vermeiden, sollten Sie einen gut getesteten XML-Parser verwenden, der den W3C-Spezifikationen folgt und nicht wesentlich länger braucht, um missgebildete Dokumente zu verarbeiten.
Ungültige XML-Dokumente
Ungültige XML-Dokumente sind wohlgeformt, enthalten aber unerwartete Werte. Hier kann sich ein Angreifer Anwendungen zunutze machen, die nicht ordnungsgemäß ein XML-Schema definieren, um zu erkennen, ob Dokumente gültig sind. Nachfolgend finden Sie ein einfaches Beispiel für ein Dokument, das, wenn es nicht korrekt validiert wird, unbeabsichtigte Folgen haben kann.
Ein Webspeicher, der seine Transaktionen in XML-Daten speichert:
<purchase></purchase>
<id>123</id>
<price>200</price>
And the user only has control over the <id> value. It is then possible, without the right counter measures, for an attacker to input something like this:</id>
<purchase></purchase>
<id>123</id>
<price>0</price>
<id></id>
<price>200</price>
If the parser that processes this document only reads the first instance of the <id> and <price> tags this will lead to unwanted results. </price></id>

Es ist auch möglich, dass das Schema nicht restriktiv genug ist oder dass die sonstige Eingabevalidierung unzureichend ist, so dass negative Zahlen, spezielle Dezimalzahlen (wie NaN oder Infinity) oder übermäßig große Werte eingegeben werden können, wo sie nicht erwartet werden, was zu ähnlichem unbeabsichtigtem Verhalten führt.
Um Schwachstellen im Zusammenhang mit ungültigen XML-Dokumenten zu vermeiden, sollte ein präzises und restriktives XML-Schema definiert werden, um Probleme durch unsachgemäße Datenvalidierung zu vermeiden.
Im nächsten Blog-Beitrag werden wir auf einige fortgeschrittenere Angriffe auf XML-Dokumente eingehen, wie z.B. Jumbo Payloads und die gefürchtete OWASP Top Ten Nummer vier, XXE.
In der Zwischenzeit können Sie Ihre Kenntnisse über die XML-Eingabevalidierung auf unserem Portalvertiefen oder herausfordern .
Die Spezifikationen für XML und XML-Schemas enthalten mehrere Sicherheitslücken. Gleichzeitig stellen diese Spezifikationen die Tools bereit, die zum Schutz von XML-Anwendungen erforderlich sind. Auch wenn wir XML-Schemas verwenden, um die Sicherheit von XML-Dokumenten zu definieren, können sie für eine Vielzahl von Angriffen verwendet werden: Dateiabruf, serverseitige Request Forgery, Port-Scanning oder Brute Forcing.

Extensible Markup Language (XML) ist eine Auszeichnungssprache, die zur Codierung von Dokumenten in einem Format verwendet wird, das sowohl für Maschinen einfach zu handhaben als auch für Menschen lesbar ist. Allerdings enthält dieses häufig verwendete Format mehrere Sicherheitslücken. In diesem ersten Blog-Beitrag zum Thema XML erkläre ich die Grundlagen der sicheren Handhabung von XML-Dokumenten mit Hilfe eines Schemas.
OWASP unterteilt die verschiedenen Sicherheitslücken im Zusammenhang mit XML und XML-Schemas in zwei Kategorien.
Missgebildete XML-Dokumente
Missgebildete XML-Dokumente sind Dokumente, die nicht den W3C-XML-Spezifikationen entsprechen. Einige Beispiele, die zu einem fehlerhaften Dokument führen, sind das Entfernen eines End-Tags, das Ändern der Reihenfolge verschiedener Elemente oder die Verwendung von verbotenen Zeichen. Alle diese Fehler sollten zu einem schwerwiegenden Fehler führen und das Dokument sollte keine weitere Verarbeitung erfahren.
Um Schwachstellen durch missgebildete Dokumente zu vermeiden, sollten Sie einen gut getesteten XML-Parser verwenden, der den W3C-Spezifikationen folgt und nicht wesentlich länger braucht, um missgebildete Dokumente zu verarbeiten.
Ungültige XML-Dokumente
Ungültige XML-Dokumente sind wohlgeformt, enthalten aber unerwartete Werte. Hier kann sich ein Angreifer Anwendungen zunutze machen, die nicht ordnungsgemäß ein XML-Schema definieren, um zu erkennen, ob Dokumente gültig sind. Nachfolgend finden Sie ein einfaches Beispiel für ein Dokument, das, wenn es nicht korrekt validiert wird, unbeabsichtigte Folgen haben kann.
Ein Webspeicher, der seine Transaktionen in XML-Daten speichert:
<purchase></purchase>
<id>123</id>
<price>200</price>
And the user only has control over the <id> value. It is then possible, without the right counter measures, for an attacker to input something like this:</id>
<purchase></purchase>
<id>123</id>
<price>0</price>
<id></id>
<price>200</price>
If the parser that processes this document only reads the first instance of the <id> and <price> tags this will lead to unwanted results. </price></id>

Es ist auch möglich, dass das Schema nicht restriktiv genug ist oder dass die sonstige Eingabevalidierung unzureichend ist, so dass negative Zahlen, spezielle Dezimalzahlen (wie NaN oder Infinity) oder übermäßig große Werte eingegeben werden können, wo sie nicht erwartet werden, was zu ähnlichem unbeabsichtigtem Verhalten führt.
Um Schwachstellen im Zusammenhang mit ungültigen XML-Dokumenten zu vermeiden, sollte ein präzises und restriktives XML-Schema definiert werden, um Probleme durch unsachgemäße Datenvalidierung zu vermeiden.
Im nächsten Blog-Beitrag werden wir auf einige fortgeschrittenere Angriffe auf XML-Dokumente eingehen, wie z.B. Jumbo Payloads und die gefürchtete OWASP Top Ten Nummer vier, XXE.
In der Zwischenzeit können Sie Ihre Kenntnisse über die XML-Eingabevalidierung auf unserem Portalvertiefen oder herausfordern .
Die Spezifikationen für XML und XML-Schemas enthalten mehrere Sicherheitslücken. Gleichzeitig stellen diese Spezifikationen die Tools bereit, die zum Schutz von XML-Anwendungen erforderlich sind. Auch wenn wir XML-Schemas verwenden, um die Sicherheit von XML-Dokumenten zu definieren, können sie für eine Vielzahl von Angriffen verwendet werden: Dateiabruf, serverseitige Request Forgery, Port-Scanning oder Brute Forcing.

Klicken Sie auf den unten stehenden Link und laden Sie die PDF-Datei dieser Ressource herunter.
Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Bericht ansehenDemo buchenAnwendungssicherheitsforscher - F&E-Ingenieur - PhD-Kandidat
Extensible Markup Language (XML) ist eine Auszeichnungssprache, die zur Codierung von Dokumenten in einem Format verwendet wird, das sowohl für Maschinen einfach zu handhaben als auch für Menschen lesbar ist. Allerdings enthält dieses häufig verwendete Format mehrere Sicherheitslücken. In diesem ersten Blog-Beitrag zum Thema XML erkläre ich die Grundlagen der sicheren Handhabung von XML-Dokumenten mit Hilfe eines Schemas.
OWASP unterteilt die verschiedenen Sicherheitslücken im Zusammenhang mit XML und XML-Schemas in zwei Kategorien.
Missgebildete XML-Dokumente
Missgebildete XML-Dokumente sind Dokumente, die nicht den W3C-XML-Spezifikationen entsprechen. Einige Beispiele, die zu einem fehlerhaften Dokument führen, sind das Entfernen eines End-Tags, das Ändern der Reihenfolge verschiedener Elemente oder die Verwendung von verbotenen Zeichen. Alle diese Fehler sollten zu einem schwerwiegenden Fehler führen und das Dokument sollte keine weitere Verarbeitung erfahren.
Um Schwachstellen durch missgebildete Dokumente zu vermeiden, sollten Sie einen gut getesteten XML-Parser verwenden, der den W3C-Spezifikationen folgt und nicht wesentlich länger braucht, um missgebildete Dokumente zu verarbeiten.
Ungültige XML-Dokumente
Ungültige XML-Dokumente sind wohlgeformt, enthalten aber unerwartete Werte. Hier kann sich ein Angreifer Anwendungen zunutze machen, die nicht ordnungsgemäß ein XML-Schema definieren, um zu erkennen, ob Dokumente gültig sind. Nachfolgend finden Sie ein einfaches Beispiel für ein Dokument, das, wenn es nicht korrekt validiert wird, unbeabsichtigte Folgen haben kann.
Ein Webspeicher, der seine Transaktionen in XML-Daten speichert:
<purchase></purchase>
<id>123</id>
<price>200</price>
And the user only has control over the <id> value. It is then possible, without the right counter measures, for an attacker to input something like this:</id>
<purchase></purchase>
<id>123</id>
<price>0</price>
<id></id>
<price>200</price>
If the parser that processes this document only reads the first instance of the <id> and <price> tags this will lead to unwanted results. </price></id>

Es ist auch möglich, dass das Schema nicht restriktiv genug ist oder dass die sonstige Eingabevalidierung unzureichend ist, so dass negative Zahlen, spezielle Dezimalzahlen (wie NaN oder Infinity) oder übermäßig große Werte eingegeben werden können, wo sie nicht erwartet werden, was zu ähnlichem unbeabsichtigtem Verhalten führt.
Um Schwachstellen im Zusammenhang mit ungültigen XML-Dokumenten zu vermeiden, sollte ein präzises und restriktives XML-Schema definiert werden, um Probleme durch unsachgemäße Datenvalidierung zu vermeiden.
Im nächsten Blog-Beitrag werden wir auf einige fortgeschrittenere Angriffe auf XML-Dokumente eingehen, wie z.B. Jumbo Payloads und die gefürchtete OWASP Top Ten Nummer vier, XXE.
In der Zwischenzeit können Sie Ihre Kenntnisse über die XML-Eingabevalidierung auf unserem Portalvertiefen oder herausfordern .
Die Spezifikationen für XML und XML-Schemas enthalten mehrere Sicherheitslücken. Gleichzeitig stellen diese Spezifikationen die Tools bereit, die zum Schutz von XML-Anwendungen erforderlich sind. Auch wenn wir XML-Schemas verwenden, um die Sicherheit von XML-Dokumenten zu definieren, können sie für eine Vielzahl von Angriffen verwendet werden: Dateiabruf, serverseitige Request Forgery, Port-Scanning oder Brute Forcing.
Inhaltsübersicht
Anwendungssicherheitsforscher - F&E-Ingenieur - PhD-Kandidat

Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenHerunterladenRessourcen für den Einstieg
KI-Codier-Assistenten: Ein Leitfaden zur sicherheitsgerechten Navigation für die nächste Generation von Entwicklern
Große Sprachmodelle bieten unwiderstehliche Geschwindigkeits- und Produktivitätsvorteile, aber sie bringen auch unbestreitbare Risiken für das Unternehmen mit sich. Herkömmliche Sicherheitsleitplanken reichen nicht aus, um die Flut zu kontrollieren. Entwickler benötigen präzise, geprüfte Sicherheitskenntnisse, um Sicherheitslücken bereits zu Beginn des Softwareentwicklungszyklus zu erkennen und zu verhindern.
Sicher durch Design: Definition von Best Practices, Befähigung von Entwicklern und Benchmarking von präventiven Sicherheitsergebnissen
In diesem Forschungspapier werden die Mitbegründer von Secure Code Warrior , Pieter Danhieux und Dr. Matias Madou, Ph.D., zusammen mit den Experten Chris Inglis, ehemaliger US National Cyber Director (jetzt strategischer Berater der Paladin Capital Group), und Devin Lynch, Senior Director, Paladin Global Institute, die wichtigsten Erkenntnisse aus mehr als zwanzig ausführlichen Interviews mit Sicherheitsverantwortlichen in Unternehmen, darunter CISOs, ein VP of Application Security und Software-Sicherheitsexperten, offenlegen.
Ressourcen für den Einstieg
Maßstäbe setzen: SCW veröffentlicht kostenlose Sicherheitsregeln für KI-Codierung auf GitHub
KI-gestützte Entwicklung ist nicht mehr nur Zukunftsmusik – sie ist bereits da und verändert die Art und Weise, wie Software geschrieben wird, rasant. Tools wie GitHub Copilot, Cline, Roo, Cursor, Aider und Windsurf machen Entwickler zu ihren eigenen Co-Piloten, ermöglichen schnellere Iterationen und beschleunigen alles vom Prototyping bis hin zu großen Refactoring-Projekten.
Schließen Sie den Kreis zu Schwachstellen mit Secure Code Warrior + HackerOne
Secure Code Warrior freut sich, unsere neue Integration mit HackerOne, einem führenden Anbieter von offensiven Sicherheitslösungen, bekannt zu geben. Gemeinsam bauen wir ein leistungsstarkes, integriertes Ökosystem auf. HackerOne zeigt auf, wo Schwachstellen in realen Umgebungen tatsächlich auftreten, und deckt das "Was" und "Wo" von Sicherheitsproblemen auf.
Aufgedeckt: Wie die Cyber-Industrie "Secure by Design" definiert
In unserem neuesten Whitepaper haben sich unsere Mitbegründer Pieter Danhieux und Dr. Matias Madou, Ph.D., mit über zwanzig Sicherheitsverantwortlichen in Unternehmen, darunter CISOs, AppSec-Leiter und Sicherheitsexperten, zusammengesetzt, um die wichtigsten Teile dieses Puzzles herauszufinden und die Realität hinter der Secure by Design-Bewegung aufzudecken. Die Sicherheitsteams haben ein gemeinsames Ziel, aber kein gemeinsames Regelwerk.