Rechercher
Contactez-nous Suivez-nous sur Twitter En francais English Language
 

Abonnez-vous gratuitement à notre NEWSLETTER

Newsletter FR

Newsletter EN

Vulnérabilités

Se désabonner

Vigil@nce - PHP : exécution de code via is_a et __autoload

octobre 2011 par Vigil@nce

Ce bulletin a été rédigé par Vigil@nce : http://vigilance.fr/offre

SYNTHÈSE DE LA VULNÉRABILITÉ

Selon le code PHP, et l’utilisation de la fonction __autoload(),
un attaquant peut inclure un fichier PHP distant via la fonction
is_a().

Gravité : 2/4

Date création : 26/09/2011

PRODUITS CONCERNÉS

 Fedora
 PHP

DESCRIPTION DE LA VULNÉRABILITÉ

La fonction __autoload() est appelée lors de la première
utilisation d’une classe. Elle contient généralement du code pour
inclure le fichier de définition de la classe. Par exemple :
function __autoload($class_name) include $class_name.’.php’ ;

La fonction is_a() teste si le premier paramètre est un objet de
la classe passée en deuxième paramètre :
bool is_a (object $object, string $class_name) ;

Depuis PHP version 5.3.7, la fonction is_a() accepte en premier
paramètre une chaîne correspondant à un objet. Cependant, cette
nouvelle fonctionnalité appelle automatiquement la fonction
__autoload() avec la chaîne en paramètre. Le fichier local ou
distant (si allow_url_include est activé) portant le nom de la
chaîne est alors inclus via la directive "include" généralement
située dans __autoload(). Le code de ce fichier est ensuite
interprété en tant que code PHP à exécuter.

La méthode PEAR::isError() emploie is_a(), et peut être utilisée
comme vecteur d’attaque. Des programmes PHP utilisant is_a() et
__autoload() peuvent aussi être utilisés comme vecteur d’attaque,
si l’attaquant peut transmettre une chaîne à is_a(), et si la
fonction __autoload() ne filtre pas les fichiers qu’elle inclus.

Selon le code PHP, et l’utilisation de la fonction __autoload(),
un attaquant peut donc inclure un fichier PHP distant via la
fonction is_a().

ACCÈS AU BULLETIN VIGIL@NCE COMPLET

http://vigilance.fr/vulnerabilite/PHP-execution-de-code-via-is-a-et-autoload-11010


Voir les articles précédents

    

Voir les articles suivants