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, accès fichier via le caractère nul

novembre 2010 par Vigil@nce

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

SYNTHÈSE DE LA VULNÉRABILITÉ

Lorsqu’une application PHP ne filtre pas les caractères nuls dans
les paramètres, et emploie ces paramètres pour accéder à un
fichier, le nom du fichier réellement accédé est tronqué.

 Gravité : 2/4
 Date création : 19/11/2010

DESCRIPTION DE LA VULNÉRABILITÉ

Le langage PHP propose de nombreuses fonctions de manipulation de
fichiers : include(), copy(), is_file(), file_get_contents(),
file_put_contents(), file(), glob(), is_dir(), file_exists(),
fileatime(), filectime(), filegroup(), fileinode(), filemtime(),
fileowner(), fileperms(), filesize(), filetype(), fopen(),
is_executable(), is_link(), is_readable(), is_writable(),
lchgrp(), lchown(), link(), linkinfo(), lstat(), mkdir(),
pathinfo(), popen(), readfile(), realpath(), rename(), rmdir(),
stat(), symlink(), touch(), unlink(), tempnam().

En langage C, le caractère nul ’\0’ indique la fin d’une chaîne,
mais en langage PHP une chaîne peut contenir le caractère nul :
"bon\0jour".

Les fonctions de manipulation de fichiers (implémentées en C)
tronquent le nom de fichier après le caractère nul. Cependant,
l’éventuel code PHP vérifiant la validité du nom de fichier ne le
tronque pas. Cette incohérence peut par exemple permettre
d’accéder à un fichier, même si son extension est invalide.

Lorsqu’une application PHP ne filtre pas les caractères nuls dans
les paramètres, et emploie ces paramètres pour accéder à un
fichier, le nom du fichier réellement accédé est donc tronqué.

ACCÈS AU BULLETIN VIGIL@NCE COMPLET

http://vigilance.fr/vulnerabilite/PHP-acces-fichier-via-le-caractere-nul-10139


Voir les articles précédents

    

Voir les articles suivants