hi,
Ich Programmiere gerade auf PHP und MySQL Basis ein Programm an dem locker 10 Leute gleichzeitig dran arbeiten werden. Das sind dann Buchhalter, Produktion, Außendienst usw...
Ich möchte dieses Programm nun noch Wasserdicht machen vor Angriffen die dem system schaden könnten. Wenn zB ein erfahrener angestellter kenntise von PHP HTML und co besitzt, könnte er das system derzeit über die adresszeile manipulieren indem er Variablen ersetzt und dann den Link per Hand absendet.. das ergebnis kann ins Nirvana führen oder fehlerhafte mysql einträge erzeugen die weiderrum andere fehler bei anderen nutzern hervorrufen könnte...
gibt es eine checkliste für so was?
Prinzipiell ja. Schränke die erlaubten Parameter ein und zwar so, dass Du die im Script oder CGI-Programm übersichtlich hast und bei Parametern, die nicht zulässig sind, eine entsprechende Fehlermeldung ausgibst.
Die Values zu den Parametern, nun, die sind oft dynamisch, beispielsweise die Keys von Datensätzen, wo ständig welche dazukommen oder verändert werden. Diese in einem Script zu verwalten, ist natürlich nicht möglich, aber eine Manipulation kann nahezu ausgeschlossen werden, wenn Parameter UND Values in der Kommunikation zwischen Webserver und UserAgent verschlüsselt werden (synchron).
--roro