Tach!
Nun, ja die Seite ist für unsere Firma. Aber Gott sei Dank nur für interne Verwendung. Die Wahrscheinlichkeit des bösartigen Schabernacks ist also relativ gering, zudem hat auch nur ein begrenzter Satz an Menschen Zugriff auf dieses System, das ich erneuern möchte/muss/darf
Betrachte die Sache nicht zu sehr durch die Sicherheitsbrille. Sicherheit vor böswilligen Eingaben ist eigentlich nur ein Nebenthema. Vielmehr kommt es darauf an, dass die Daten korrekt verarbeitet werden. Wenn das sichergestellt ist, ist Code-Injection kein Thema mehr.
Beispielsweise wirst du bei der Schulung der Kollegen zu erwähnen vergessen haben, dass in die Felder bestimmte Zeichen nicht eingegeben werden dürfen, weil sonst die Verarbeitung misslingt. Oder die Kollegen vergessen das wieder, weil sie den Punkt nicht als wichtig betrachten. Im einfachsten Fall erzeugt das nur einen Syntaxfehler. Jedenfalls gibt später mal jemand aus Versehen oder aufgrund einer fachlichen Notwendigkeit diese Zeichen ein, und dann geht dein System kaputt. Deshalb immer darauf achten, dass dort, wo Daten in Code eingefügt werden, diese entsprechend der Regeln des Codes/Kontextes zu bearbeiten sind (üblicherweise Maskieren der Sonderzeichen).
Den Kontextwechsel habe ich tatsächlich verstanden. Ich werde dies jetzt immer mit einbeziehen.
Ein weiteres Thema wäre auch noch die Zeichenkodierung. Nicht alle Systeme haben UTF-8 als Default eingestellt und/oder können damit korrekt umgehen. Teste immer auch mindestens Umlaute, und wenn möglich auch beispielsweise chinesische Zeichen und Unicode-Emojis. Man muss sich auch damit vertraut machen, damit man nicht früher oder später kaputte Daten aufgrund nicht beachteter Kodierungen zu korrigieren hat.
dedlfix.