Sicheres Kontaktformular mit jQuery und PHP erstellen

WICHTIG: Bitte Artikel genauestens Lesen! jQuery Validierung eines Kontaktformulars ist nicht sicher! Sie kann nur ggü. dem User einige hilfreiche Tipps bei Fehleingaben liefern! Für das Abfangen von sicherheitsrelevanten Faktoren sollte aber definitiv kein JavaScript (jQuery) benutzt werden!

Ein Kontaktformular ist mit PHP eigentlich schnell erstellt und lässt sich einfachste Weise in jede Webseite einbauen. Was leider oft vergessen wird ist die Sicherheit — nicht nur zum Schutz vor SPAM des Kontaktformular-Administrators, sondern auch zum Schutz vor Injections, die das Skript zum versenden von SPAM unter dem Namen des Webseitenbetreibers missbrauchen können.

Oft wird diese vermeintlich triviale Website-Funktion von Programmier-Anfängern umgesetzt, die keine Erfahrung mit der sicheren Web-Programmierung haben. Solche Skripte prüfen die Formular-Eingaben nicht auf unerlaubte Zeichen – dadurch können sie von Spammern als Spam-Verteiler missbraucht werden … Das oberste Gebot eines jeden Web-Programmierers muss lauten: „Vertraue nichts und niemandem“. Daten, die ein Skript aus HTML-Formularen, POST/GET-Übergabeparametern oder sonstwoher erhält müssen grundsätzlich als potenziell gefährlich angesehen und vor der Verarbeitung „gesäubert“ werden. Eine „gesunde“ Portion Paranoia ist sehr hilfreich beim Web-Programmieren, auch wenn Auftraggeber oder Vorgesetzte manchmal schief gucken mögen.

Auch wenn man ein Webskript nicht so sicher machen kann wie ein Tresor, lässt sich ein Kontaktformular doch recht einfach absichern. Damit die SPAMmer nicht so einfach freies Futter finden, hier also eine Anleitung, wie ein Formular sehr einfach abgesichert werden kannund dazu passend ein How-To zur Erstellung eines sicheres Kontaktformulars mit PHP und jQuery

EDIT:

ich habe seit der Erstellung des Posts gelernt, dass eine alleinige JS Validierung aus Sicherheitstechnischer Sicht eigentlich gar keine ist, denn: „Die Validierung von Formularen über JavaScript kann zwar nützlich sein, da sie oft schneller ist und die Seite nicht neu geladen werden muss, allerdings ist sie kein Ersatz für eine erneute Validierung der Daten auf der Seite des Servers. Sind die Daten nicht serverseitig validiert worden, kann man davon ausgehen dass sie überhaupt nicht validiert wurden.“ [gängige Sicherheitsprobleme im Web

Zudem hat sich leider immer wieder herausgestellt, das es mit Javascript unmöglich ist, eine Validierung zu garantieren. Irgendwelche Trottel haben Javascript immer ausgeschaltet oder es buggt. „ [phpBlogger]

Ich werde demnächst also nur noch eine phpValidierung durchführen, und wohlmöglich mit Hilfe dieser Bibliothek

4 Kommentare » Schreibe einen Kommentar

  1. From here we have almost ten minutes of scenes previously unseen by me, cut apparently to reduce the prestige A-picture, which flopped, into a zippy B-picture, which might make some money. ,

  2. Leider ist der Link zu: How-To zur Erstellung eines sicheres Kontaktformulars mit PHP und jQuery tot. Gibt es einen alternativlink oder war das jetzt?

  3. Zitat: „Auf unbestimmte Zeit sind meine Blogs offline gesetzt.
    Bei Supportanfragen oder Fragen zu alten Artikel kann gerne das Kontaktformular verwendet werden.“

    Zudem habe ich seit dem gelernt, dass eine alleinige JS Validierung aus Sicherheitstechnischer Sicht eigentlich gar keine ist, denn: „Die Validierung von Formularen über JavaScript kann zwar nützlich sein, da sie oft schneller ist und die Seite nicht neu geladen werden muss, allerdings ist sie kein Ersatz für eine erneute Validierung der Daten auf der Seite des Servers. Sind die Daten nicht serverseitig validiert worden, kann man davon ausgehen dass sie überhaupt nicht validiert wurden.“ [gängige Sicherheitsprobleme im Web

    Zudem „hat sich leider immer wieder herausgestellt, das es mit Javascript unmöglich ist, eine Validierung zu garantieren. Irgendwelche Trottel haben Javascript immer ausgeschaltet oder es buggt. “ [phpBlogger]

    Ich werde demnächst also nur noch eine phpValidierung durchführen, und wohlmöglich mit Hilfe dieser Bibliothek

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.