M 4.188 Prüfen der Benutzereingaben beim IIS-Einsatz
Verantwortlich für Initiierung: Leiter IT, IT-Sicherheitsmanagement
Verantwortlich für Umsetzung: Administrator
Viele Web-Seiten beinhalten Formularfelder zur Eingabe von benutzerspezifischen Informationen, z. B. für Bestellungen, Gästebucheinträge etc. In einigen Fällen werden die Benutzereingaben zum Aufruf weiterer ASP-Seiten verwendet oder direkte SQL-Abfragen erstellt. Dabei besteht die Gefahr, dass Eingaben, die vom System nicht erwartet werden, z. B. Sonderzeichen, Buchstaben anstelle von Zahlen, zu unnötigen Ressourcenbelastungen und Pufferüberläufen führen können. Als Folge können dadurch unter Umständen Sicherheitsfunktionen umgangen werden.
Um Schäden zu vermeiden, sind Benutzereingaben und URL-Erweiterungen immer zu prüfen, bevor diese an einen neuen Prozess übergeben werden, der ggf. auf externe Ressourcen, wie das Dateisystem oder eine Datenbank, zugreift. Eine Benutzereingabe kann z. B. auf Basis des verwendeten Zeichensatzes überprüft werden. Dabei sollten nur Eingaben zugelassen werden, die einem erlaubten Schema entsprechen und beispielsweise nur Zahlen und Zeichen aus den Bereichen 0-9, a-z, A-Z und _ enthalten.
Die Überprüfung einer Benutzereingabe kann durch spezielle Scripts erfolgen, beispielsweise durch ein VBScript, das die Klasse RegExp und die Funktion Replace dafür verwendet. Weitere Details hierzu werden auf dem Internet-Angebot von Microsoft erörtert:
http://www.microsoft.com/jscript
http://msdn.microsoft.com/workshop/languages/clinic/ scripting051099.asp
Ergänzende Kontrollfragen:
- Werden Benutzereingaben in Formularfeldern und URLs geprüft?