|
|
Dieses Kapitel dokumentiert primär Brüche in der Rückwärts-Kompatibilität die in Zend_View durchgeführt wurden, und sollte als Hilfe im Fall einer Migration von vorhergehenden Versionen dienen.
Vor dem 1.7.5 Release wurde das Zend Framework Team darauf aufmerksam gemacht das eine
potentielle Local File Inclusion (LFI) Schwäche in der
Zend_View::render() Methode existiert. Vor 1.7.5, erlaubte die
Methode standardmäßig, die Fähigkeit View Skripte zu spezifizieren die Schreibweisen für
Eltern-Verzeichnisse enthalten (z.B. "../" oder "..\"). Das öffnet die Möglichkeit für
eine LFI Attacke wenn ungefilterte Benutzereingaben an die
render() Methode übergeben werden:
// Wobei $_GET['foobar'] = '../../../../etc/passwd' echo $view->render($_GET['foobar']); // LFI Einbruch
Zend_View wirft jetzt standardmäßig eine Ausnahme wenn so ein
View Skript angefragt wird.
Da viele Entwickler gemeldet haben das Sie so eine Schreibweise in Ihren Anwendungen verwenden die nicht das Ergebnis einer Benutzereingabe sind, wurde ein spezielles Flag erstellt um das Deaktivieren des standardmäßigen Schutzes zu erlauben. Es gibt 2 Methoden um das Durchzuführen: Indem der 'lfiProtectionOn' Schlüssel in den Konstruktor-Optionen übergeben wird, oder durch den expliziten Aufruf der setLfiProtection() Methode.
// Ausschalten über den Konstruktor
$view = new Zend_View(array('lfiProtectionOn' => false));
// Ausschalten über expliziten Aufruf der Methode:
$view = new Zend_View();
$view->setLfiProtection(false);
|
|
Copyright © 2005-2011 Zend Technologies Inc (compiled by mikaelkael with ZFDocumentor - SVN 18616).

