Jump to content
Sign in to follow this  
maui muc

Sicherheit bei Formularen mit MySQL Anbindung

Recommended Posts

Hallo zusammen,


ich schreibe gerade ein kleines PHP Script über das sich User in eine Datenbank eintragen können. Das ganz soll folgendermaßen ablaufen. Der User füllt ein Formular aus, die eingegebenen Daten werden geprüft und anschließend in eine Datenbank gespeichert. So weit ist das auch kein Problem für mich.


Jetzt habe ich aber die Sorge, dass sich ein paar Spaßfögel finden, die über ein selbst erstelltes Formular meine Datenbank füttern. Das möchte ich möglichst unterbinden und so restriktiv wie möglich sein. Es sollen wirklich nur Daten von meinem eigenen Formular akzeptiert werden. Wie kann ich das am besten realisieren?


Besten Dank und viele Grüße


Stefan

Share this post


Link to post
Share on other sites

Das ist wirklich garnicht easy, denn fast jedes Formular kann man fälschen. Die verbreitetste Variante ist aber den Referer auszuwerten, also zu schauen "von" welcher URL wurde das Script, welches den Input verabreitet, aufgerufen.


-> $_SERVER["HTTP_REFERER"]

Share this post


Link to post
Share on other sites

Hallo Powie,


besten Dank für deine schnelle Antwort. Diese Variable scheint ein Schritt in die richtige Richtung zu sein. Zwar wird der Wert vom Browser des Useres gesendet, erschwert aber schon mal das fälschen des Formulars.


Jetzt stehe ich aber noch vor einer weiteren kleinen Herausforderung. Mit diesem Code überprüfe ich den HTTP_REFERER:

if (isset($_SERVER["HTTP_REFERER"]) 
and $_SERVER["HTTP_REFERER"] == "http://".$_SERVER["SERVER_NAME"].$_SERVER["PHP_SELF"] 
and isset($_POST["submit"])) {....} 

Dieser Vergleich hat aber massive Schwächen: Es wird zwischen Groß- und Klein-Schreibung unterschieden was unter Umständen zu Problemen führt.


Habt ihr einen Tipp für mich wie ich die Überprüfung des HTTP-Verweises besser gestalten kann?


Viele Grüße


Stefan

Share this post


Link to post
Share on other sites
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...