Sicherheit in Scripts
Maik Görgens
- perl
0 Jonas Harth0 Cheatah0 Jens Nödler
Hi,
weiß jemand eine Übersicht, in der steht worauf man bei Benutzereingaben achten muß. z.B. Größe der Eingaben und irgendwelche Befehle. (allgemein Sicherheitslöcher)
Es soll halt keiner Schaden anrichten können.
Danke im Vorraus
Maik Görgens
Hi,
weiß jemand eine Übersicht, in der steht worauf man bei Benutzereingaben achten muß. z.B. Größe der Eingaben und irgendwelche Befehle. (allgemein Sicherheitslöcher)
das hängt immer davon ab, was Du damit machst. Wenn Du beispielsweise die Daten nur zurück nach STDOUT printest, kannst Du im Prinzip alles erlauben. Fütterst Du system() o.ä. damit, solltest Du ein _wenig_ restriktiver sein ;-)
Es soll halt keiner Schaden anrichten können.
Im Zweifel mit einer Whitelist. Überlege Dir, welche Zeichen mit _Sicherheit_ unproblematisch sind, und erlaube nur diese. Wenn dies beispielsweise Buchstaben, Ziffern und der Unterstrich (also \w) sein können, ist eine mögliche Abfrage:
if ($variable =~ /[^\w]/) { &verboten; }
[^\w] kann man auch einfach \W schreiben. Obige Schreibweise ist aber leichter anzupassen - einfach die erlaubten Zeichen in der Zeichenklasse hinzufügen.
Cheatah
Nabend,
Es soll halt keiner Schaden anrichten können.
Ist zwar keine Übersicht, aber einige Aspekte werden besprochen: http://www.w3.org/Security/faq/wwwsf4.html.
Ansonsten bringt dich Google weiter http://www.google.com/search?q=cgi+%2Bsecurity&meta=lr%3D%26hl%3Dde... ;-)
bye