Also mit NULL-Bytes taten sich eine zeitlang einige Browser schwer, ich glaube auch, dass man mit überlangen URLs einen Pufferüberlauf hervorrufen konnte.
Was die Protokollangabe betrifft, würde ich eher auf eine Whitelist setzen. Also statt zu überlegen, welche Protokolle sich suboptimal auswirken können und dann doch welche zu übersehen, empfehle ich zu überlegen, welche Protokolle in deiner Anwendung sinnvoll sind. Vor einigen Jahren konntest du z.B. mit "telnet:" oder so deinen Browser dazu überreden, auf dem lokalen Rechner eine Datei zu schreiben. Die Whitelist liefe dann wahrscheinlich auf http, https, ftp und vielleicht noch ein paar andere hinaus.
Danke, das sind schonmal gute Hinweise.
Dass eine Whitelist besser ist, steht ausser Frage und in der Praxis werde ich auch immer eine solche einsetzen.
Die Frage ist rein interessehalber :)
Gruß,
Andreas