CWE-Referenz › CWE-650: Trusting HTTP Permission Methods on the Server Side
CWE-650: Trusting HTTP Permission Methods on the Server Side
CWE ID: 650
Name: Trusting HTTP Permission Methods on the Server Side
Beschreibung
Der Server enthält einen Schutzmechanismus, der davon ausgeht, dass jede URI, auf die über HTTP GET zugegriffen wird, keinen Zustandsänderung der zugehörigen Ressource verursacht. Dies könnte es Angreifern ermöglichen, beabsichtigte Zugriffsbeschränkungen zu umgehen und Ressourcenmodifikations- und Löschangriffe durchzuführen, da einige Anwendungen GET zur Zustandsänderung erlauben.
Erweiterte Beschreibung
Die HTTP GET Methode und einige andere Methoden sind dazu konzipiert, Ressourcen abzurufen und nicht den Zustand der Anwendung oder der Ressourcen auf der Serverseite zu verändern. Darüber hinaus verlangt die HTTP Spezifikation, dass GET Anfragen (und andere Anfragen) keine Seiteneffekte haben sollten. In der Annahme, dass dies ausreichend ist, um unbeabsichtigte Ressourcenänderungen zu verhindern, kann eine Anwendung die HTTP Anfragen daran hindern, DELETE, PUT und POST Operationen auf die Ressourcenrepräsentation durchzuführen. Es gibt jedoch nichts im HTTP Protokoll selbst, das tatsächlich verhindert, dass die HTTP GET Methode mehr als nur eine Abfrage der Daten durchführt. Entwickler können problemlos Programme erstellen, die eine HTTP GET Anfrage akzeptieren und tatsächlich Daten auf dem Server erstellen, aktualisieren oder löschen. Es ist eine gängige Praxis bei REST-basierten Web Services, HTTP GET Anfragen zur Modifikation von Ressourcen auf der Serverseite zu verwenden. Allerdings muss in solchen Fällen die Zugriffskontrolle in der Anwendung ordnungsgemäß durchgesetzt werden. Es sollten keine Annahmen getroffen werden, dass nur HTTP DELETE, PUT, POST und andere Methoden die Macht haben, die Repräsentation der angefragten Ressource zu verändern.
Risikominderungsmaßnahmen
Maßnahme (System Configuration)
Effektivität: Unknown
Beschreibung: Konfigurieren Sie ACLs (Access Control Lists) auf der Serverseite, um sicherzustellen, dass für jede zugängliche Ressourcenrepräsentation das angemessene Maß an Zugriffskontrolle definiert ist.
Verwandte Schwachstellen
Ist Ihre IT-Infrastruktur betroffen?
Schwachstellen wie CWE-650: Trusting HTTP Permission Methods on the Server Side werden von Angreifern gezielt gesucht — meist automatisiert und ohne Rücksicht darauf, wie groß das betroffene Unternehmen ist. Ob eine solche Lücke bei Ihnen tatsächlich offen steht, lässt sich nur durch Prüfung feststellen:
- Schwachstellen-Scan — wiederkehrende Prüfung Ihrer Infrastruktur auf bekannte Lücken wie diese
- Penetrationstest — manuelle Prüfung eigener Software auf Schwachstellen, die kein Werkzeug findet
- Threat Modeling — Schwachstellenklassen im Entwurf vermeiden, statt sie später zu suchen