PHP Input (Get/Post) sicher machen
PHP Input (Get/Post) sicher machen
Ich möchte eine Funktion die php inputs (get/post) sicher macht, sprich keine befehle im string akzeptiert wie z.b. system() print etc...
Re: PHP Input (Get/Post) sicher machen
Eine Art "Blacklist" zu machen (wie du vorschlägst) ist IMHO nicht praktikabel. Wenn, dann versuche es über eine Art "Whitelist" zu lösen.
Es gibt kein "sicher" auf Knopfdruck. Jedes Skript muss aufs neue "sicher" geschrieben werden.
Es gibt kein "sicher" auf Knopfdruck. Jedes Skript muss aufs neue "sicher" geschrieben werden.
Re: PHP Input (Get/Post) sicher machen
Ich will nur dass wenn ein benutzer
test.php?test="+.system('mv+*+/dev/null')+."
aufruft die funktion system nicht ausgeführt wird oder:
test.php?test=$dbpass
dass mein php script nicht das dbpass schreibt
test.php?test="+.system('mv+*+/dev/null')+."
aufruft die funktion system nicht ausgeführt wird oder:
test.php?test=$dbpass
dass mein php script nicht das dbpass schreibt
Re: PHP Input (Get/Post) sicher machen
Kann es sein, dass du sowohl den Link von arty als auch meinen Beitrag entweder nicht gelesen oder nicht verstanden hast?!Ich will nur dass wenn ein benutzer
test.php?test="+.system('mv+*+/dev/null')+."
aufruft die funktion system nicht ausgeführt wird oder:
test.php?test=$dbpass
dass mein php script nicht das dbpass schreibt
Re: PHP Input (Get/Post) sicher machen
Das wird auf nicht passieren, solange du $test nicht ausführen lässt via exec()DjBennyF wrote:Ich will nur dass wenn ein benutzer
test.php?test="+.system('mv+*+/dev/null')+."
aufruft die funktion system nicht ausgeführt wird oder:
test.php?test=$dbpass
dass mein php script nicht das dbpass schreibt
oder schonmal versucht mit einem echo $test etwas ausführen zu lassen?
auch ein include($test) wird fehlschlagen......
-
majortermi
- Userprojekt

- Posts: 916
- Joined: 2002-06-17 16:09
Re: PHP Input (Get/Post) sicher machen
So lange du kein, eval(), kein system(), kein passthru(), kein include() - jeweils auf Variablen natürlich - und ähnliches benutzt bist du schon mal halbwegs sicher. Dann musst du nur noch beim Lesen und Schreiben von Dateien aufpassen, SQL-Injenction verhindern und bei einer Ausgabe immer brav escapen. Lies einfach mal in der DCLP-FAQ nach, da steht das meiste drin.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
Warum man sich an diese Reihenfolge halten sollte...
Re: PHP Input (Get/Post) sicher machen
Du könnste ausserdem die Datein in einer $_SESSION Variable übergeben und oder vielleicht den sicherheitskritischen variableninhalt verschlüsseln....
Re: PHP Input (Get/Post) sicher machen
Kann man nicht ein array erstellen mit allen nicht gpc variablen?
Re: PHP Input (Get/Post) sicher machen
andersrum nicht leichter?
Re: PHP Input (Get/Post) sicher machen
POST/GET/COOKIE stehen auch in $_REQUEST[]DjBennyF wrote:Kann man nicht ein array erstellen mit allen nicht gpc variablen?
bye
arty
Re: PHP Input (Get/Post) sicher machen
Kann einer von euch eine Funktion basteln, die alle variablen des scripts (globale) in ein Array speichert... Sprich alle variablen lesen und mit den gpc variablen vergleichen... geht das?
Re: PHP Input (Get/Post) sicher machen
Sowas steht irgendwo in den Userkommentaren zu den globalen Variablen vom PHP Manual. Einfach da mal ein bisschen drin stöbern.
bye
arty
bye
arty