La version 2.0.11 du framework PHP Symfony2 vient de sortir : il s'agit d'une Security Release, en d'autres termes d'un correctif important de sécurité. Elle contient un correctif important concernant une vulnérabilité du composant Serializer et d'autres correctifs mineurs . Il est donc fortement conseillé à tous ceux utilisant ce composant de rapidement effectuer une mise à jour.
La vulnérabilité faisant l'objet de cette Relase est la suivante :
"The XMLEncoder component of Symfony 2.0.x fails to disable external entities when parsing XML. In the Symfony2 framework the XML class may be used to deserialize objects or as part of a client/server API. By using external entities it is possible to include arbitrary files from the file system."
et une exploitation de celle-ci est la suivante :
1 2 3 4 5 6 7 8 9 10 11
|
$serializer = new Serializer(array(), array(
'xml' => new \Symfony\Component\Serializer\Encoder\XmlEncoder()
));
$x = $serializer->decode('<?xml version="1.0"?><!DOCTYPE scan
[]><scan>&test;</scan>',
'xml');
var_dump($x); |
et dans ce cas ,$x contient maintenant une copy de /etc/passwd encodé en base64.
Pour avoir la liste de tous les changements de cette version il suffit de se rendre à
la page Donc si vous débuter un nouveau projet sous Symfony2, c'est avec cette version qu'il faut le faire. Si par contre vous avez déjà un projet que vous voulez Upgrader alors il faut vous référer à la procédure décrite à cette
page Source :
Blog de Symfony2
1 |
0 |