Migration depuis les versions précédentes
Ce chapitre explique les cassures de compatibilités dans Zend_View, et devrait servir
de guide de migration pour ce composant.
Migrer depuis des versions inférieures à 1.7.5
Avant la version 1.7.5, l'équipe de Zend Framework a été avertie d'une faille
potentielle d'inclusion de fichier local ("Local File Inclusion" (LFI)) dans la méthode
Zend_View::render(). Avant 1.7.5, la méthode acceptait par défaut
la possibilité de spécifier des scripts de vue comportant des indications de dossier
parent (comme, "../" ou "..\"). Ceci ouvre la possibilité à une attaque LFI si des
données utilisateurs non filtrées sont passées directement à la méthode
render():
render($_GET['foobar']); // inclusion LFI
]]>
Zend_View émet maintenant une exception dans un tel
cas.
Désactiver la protection LFI de render()
Comme des développeurs utilisaient de telles notations, mais qui n'étaient
pas des données en provenance de l'extérieur, un drapeau
spécial a été crée, il permet de désactiver la protection. Pour manipuler ce
drapeau, il existe 2 moyens : le paramètre 'lfiProtectionOn' du constructeur de
votre vue, ou encore la méthode setLfiProtection().
false));
// Désactivation de la protection par la méthode dédiée
$view = new Zend_View();
$view->setLfiProtection(false);
]]>