Thread Sicherheit von Formulardaten: Gefährlicher User-Code
(38 answers)
Opened by Gast at 2004-05-22 18:01
zu 'gefährlichem code': wenn du was an system verfütterst,
ist eine eingabe wie 'rm -rf /' gefährlich. wenn du was an eine datenbank übergibst, ist 'drop table ...' gefährlich. wenn du html-code escapen willst, ist es ausserdem besser, HTML::Entities zu benutzen als etwas selbstgebasteltes. CGI solltest du verwenden, oder ein leichteres CGI-modul, denn sowas bietet noch mehr möglichkeiten zum schutz, z.b. die maximale POST-grösse. die regel ist: traue keinem user-input. wenn du ihn einfach nur ausgeben willst, ok, aber sobald user-input an andere programme etc. übergeben wird, ist er gefährlich. wie du ihn escapen musst, dafür gibt es keine allgemein-regel! (kann es auch nicht). das ist die aufgabe für dich als programmierer, das rauszufinden. auf der sicheren seite bist du, wenn du statt black-lists white-lists verwendest. also nicht fragen: "welche zeichen sollte ich verbieten?", sondern, "Welche Zeichen erlaube ich überhaupt?" Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: ![]() ![]() |