parameter prüfen

PHP, Ajax, CSS, HTML, Javascript
Eben für die wirklich Harten, die alles selber machen.
Antworten
Benutzeravatar
bce
Beiträge: 858
Registriert: Do 14.Okt, 2004 18:46
Kontaktdaten:

parameter prüfen

Beitrag von bce »

wie prüfe ich am besten parameter

Code: Alles auswählen

$_POST['irgendwas']
das kein schädlicher code enthalten ist?


wenn $_POST['irgendwas'] eine zahl sein soll, dann evtl mit:

Code: Alles auswählen

if ((isset($_GET['irgendwas'])) and (is_numeric($_GET['irgendwas']))) { 

wenn der parameter ein string ist:

Code: Alles auswählen

if ((isset($_POST['irgendwas'])) and (is_string(strip_tags($_GET['irgendwas'])))) { 
oder denke ich zu kompliziert?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wenn Du eine Zahl übergeben willst, lese diese aus und wandele sie mit intval() um. Dann ist garantiert kein gefährlicher Code mehr enthalten.
Bei allem anderen wäre zu prüfen, ob PHP-Systembefehle enthalten sind.
Also SQL, CMD, COPY, SHELL, etc...
Der Cracker Tracker von Cback macht das ja z. B. so (es gibt übrigends auch eine Stand Alone Version davon ;) ).
Strings sollten auch mit addslashes() und htmlspecialchars() umgewandelt werden. is_string() liefert jedoch immer ein false, da alles zunächst als String übernommen wird. PHP unterscheidet eben nicht immer zwischen numerischen und alphanumerischen Variablen...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Antworten