Frage

Wir haben ein paar Entwickler für allow_url_fopen fragen auf unserem Server aktiviert werden. Was in diesen Tagen der Norm ist, und wenn libcurl aktiviert ist es wirklich ein guter Grund zu erlauben?

Umwelt ist: Windows 2003, PHP 5.2.6, FastCGI

War es hilfreich?

Lösung

Sie wollen auf jeden Fall allow_url_include auf Aus gesetzt, die auch viele der Risiken von allow_url_fopen mildert.

Aber da nicht alle Versionen von PHP allow_url_include haben, Best Practice für viele ist fopen auszuschalten. Wie bei allen Funktionen, die Realität ist, dass, wenn Sie es nicht für Ihre Anwendung benötigen, deaktivieren. Wenn Sie sie tun müssen, wahrscheinlich die Curl-Modul kann es besser machen, und Ihre Anwendung Refactoring curl verwendet allow_url_fopen deaktivieren können die am wenigsten bestimmt Cracker abzuschrecken.

Andere Tipps

Ich denke, die Antwort kommt darauf an, wie gut Sie vertrauen Ihre Entwickler die Funktion verantwortungsvoll zu nutzen? Daten von einer externen URL sollte wie jede andere nicht vertrauenswürdigen Eingaben behandelt werden und solange das verstanden wird, was ist das Problem?

So wie ich es sehe, ist, dass, wenn Sie Ihre Entwickler wie Kinder zu behandeln und sie nie scharfe Sachen behandeln lassen, dann werden Sie Entwickler haben, die nie die Verantwortung für das Schreiben sicherer Codes lernen.

Cross-Site-Scripting-Angriffe sind ein Schmerz, das ist also eine Stimme gegen. Und Sie sollten unbedingt haben „ allow_url_include “ausgeschaltet, oder Sie werden in einer Welt des Schmerzes sein.

Es hängt von der Art der Entwicklung. Wenn Ihr Prototyping dann in Ordnung ist ‚allow_url_fopen‘ Ermächtigungs jedoch gibt es keine signifikante Geschwindigkeitsdifferenz zwischen Libcurl und file_get_contents und ermöglicht es nur eine Frage der Bequemlichkeit.

Für Produktionsserver sollte jeder Aufruf an libcurl für eine Sicherheitsüberprüfung gekennzeichnet werden. Wie sollte und file_get_contents fopen wenn ‚allow_url_fopen‘ aktiviert ist. Deaktivieren ‚allow_url_fopen‘ Exploits nur leicht die Anzahl der Möglichkeiten begrenzt sie nicht daran hindert, können sie durchgeführt werden.

Das große Problem ist, dass allow_url_fopen ist nicht mehr gesichert , wenn Sie also Datei von einer URL mit curl speichern möchten, können Sie von fopen / file_get passieren muss die Datei zu speichern.

  
      
  • ROTATION ist nur gut, Remote-Content von URL abgerufen werden.    (allow_url_fopen nicht erforderlich)
  •   
  • ROTATION muss mit Fopen oder File_get hinzugefügt werden, wenn Sie Remote speichern möchten   Datei auf dem Server.    (allow_url_fopen obligatorisch mit curl)
  •   

Php müssen andere Wege finden, um es gesichert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top