G 4.84 Unzureichende Validierung von Ein- und Ausgabedaten bei Webanwendungen

Webanwendungen werden im Allgemeinen von generischen Clients (Web-Browsern) verwendet, sodass Benutzer beliebige Eingabedaten an den Server übermitteln können. Werden schadhafte Eingaben eines Angreifers von der Webanwendung verarbeitet, können möglicherweise Schutzmechanismen der Webanwendung umgangen werden.

Beispiele für Angriffe auf Webanwendungen, die auf einer unzureichenden Validierung von Eingabedaten beruhen, sind SQL-Injection (siehe G 5.131 SQL-Injection ), Path Traversal (siehe G 5.172 Umgehung der Autorisierung bei Webanwendungen ) und Remote File Inclusion. Diese Angriffe können Unbefugten Zugriff auf das Betriebssystem oder auf Hintergrundsysteme ermöglichen. Bei einem erfolgreichen Angriff können schützenswerte Daten unautorisiert ausgelesen oder manipuliert werden.

Nachdem die Webanwendung die Eingabedaten erfolgreich verarbeitet hat, werden üblicherweise wieder Daten ausgegeben. Die Ausgabedaten können entweder an den Browser des Benutzers ( z. B. Statusmeldungen oder ein neuer Eintrag im Gästebuch) übermittelt oder an nachgelagerte Systeme weitergereicht werden. Werden die Daten vor der Ausgabe nicht ausreichend validiert, könnten die Ausgaben Schadcode enthalten, der auf den Zielsystemen interpretiert oder ausgeführt wird.

Die folgenden Beispiele beschreiben mögliche Auswirkungen einer unzureichenden Validierung von Ein- und Ausgaben: