Jörg Reinholz: file_get_contents und Sicherheit

Beitrag lesen

$cap_url = strtolower($_POST["capUrl"]);

Das lässt scheinbar Zugriff auf jedes und alles zu, was irgendwie lesbar ist. Du wirst weitere Prüfungen machen müssen.

Zusätzlich sehe ich die Gefahr, dass Dein Service für eine DDoS-Attacke missbraucht werden kann. Es genügen wenige Bytes Anfrage um eine größere Aktion auf Deinem Server zu veranlassen, ggf. eine noch größere auf den zu attackierenden Hosts. Du wirst auch dazu weitere Prüfungen machen müssen.


> if (false !== @file_get_contents($cap_url)){  
> 	$wms_file = file_get_contents($cap_url);

Hm. Du probierst die Datei komplett zu lesen um sie dann nochmals komplett lesen.

$cap_file = file_get_contents($cap_url)  
if (false == $cap_file) {  
# Das reicht, weil auch wenn Die Datei leer war, null oder '0' enthält nichts zu tun ist  
    # Fehlermeldung etc.  
    # Abbruch  
}  
  
# weiter mit der Verarbeitung

Was die Idee generell betriff. Ok. ok. Nur musst Du Dir im Klaren sein, was passiert, wenn sich eines Tages herausstellt, dass die verschwendeten Funktionen irgendwelche Sicherheitsprobleme machen und vielleicht sogar dazu führen, dass die Ersteller der vermeintlichen xml-Dateien auf Deinem System eigenen Code ausführen können.

Jörg Reinholz