Ist diese PHP-Weiterleitung unsicher?

8

Hmm, ich kann keine Unsicherheiten erkennen, aber ich habe mich gefragt, ob Sie das tun können, wenn ja, wie könnte ich sie reparieren / reparieren?

Heres der Code:

%Vor%

Die Seite, die ich auch umleitung, tut die Validierung & amp; Entkeimung auf ihrer Seite, aber was mich beunruhigt ist - ist diese Umleitung in irgendeiner Weise unsicher (auf meiner Seite - zu sehen, wie ich direkte $_POST verwende).

Schätzen Sie alle Hilfe.

PS: Ich bin gerade neugierig geworden, weil ich immer dachte, dass die Verwendung unsanisierter Benutzereingaben gefährlich ist (oder zumindest für XSS und SQLi gilt).

    
newbtophp 06.02.2011, 21:14
quelle

5 Antworten

7

Insgesamt ist für die meisten Websites, auf denen eine moderne Version von PHP ausgeführt wird, sicher .

Es gibt zwei Bedenken:

  • Ein böswilliger Benutzer kann möglicherweise ein Opfer dazu bringen, eine Seite des Formulars /search/*/* auf der Website unwissentlich zu besuchen, indem er sie mit einer schädlichen Seite verknüpft, die an die Seite mit Ihrer Weiterleitung weitergeleitet wird. (Beachten Sie, dass sie nicht auf nur zwei Schrägstriche nach /search beschränkt sind, da ihre POST-Variablen Schrägstriche enthalten können.) Dies ist vergleichbar mit der Übergabe einer verkürzten bit.ly-URL, die sie umleitet, also ist es nicht so schlimm.
  • HTTP-Antwortaufteilung . Wenn ein böswilliger Benutzer in seinen POST-Daten Zeilenumbrüche (speziell CRLF / \r\n ) enthält, können sie dazu führen, dass Ihr header() -Aufruf mehrere Header ausgibt, einschließlich Header, um Cookies zu setzen und so weiter. Ab PHP 5.1.2 wurde dies jedoch behoben .
ide 06.02.2011, 21:22
quelle
2

Dies ist kein Sicherheitsproblem, aber Sie sollten diese Argumente wahrscheinlich mit urlencode($_POST['term']) URL-codieren.

    
JW. 06.02.2011 21:19
quelle
0

Ja, es ist ziemlich unsicher. NIEMALS sollte man unkontrollierte Benutzereingaben in ein Skript einfügen. Ich würde empfehlen, bei minimum filter_input_array zu verwenden um Ihr $ _POST-Array zu bereinigen, bevor Sie etwas damit machen.

    
Brian Driscoll 06.02.2011 21:18
quelle
0

Ich hoffe, dass die Webschicht, die die umgeleitete URL vom Client erhält, die Überprüfung der URL als Ganzes durchführt, so dass Sie wahrscheinlich sicher sind. Aber es würde nicht schaden, die beiden Felder durch einfache Validierung zu durchlaufen, bevor die Weiterleitung gesendet wird.

    
David Harkness 06.02.2011 21:18
quelle
-1

Ich denke, Sie finden das lesen lohnenswert.

    
Paul Calabro 06.02.2011 21:22
quelle

Tags und Links