> Tech > Attention aux variables non initialisées

Attention aux variables non initialisées

Tech - Par iTPro - Publié le 24 juin 2010
email

 Par souci d’efficacité, PHP ne vérifie pas si les variables ont été initialisées avant leur utilisation. Or, quand des programmeurs oublient ou négligent d’initialiser des variables, on peut s’attendre à des « conséquences imprévues ». Normalement, les variables non initialisées ne menacent pas la sécurité, même

Attention aux variables non initialisées

si elles peuvent entraîner une défaillance de l’application.

Cependant, les variables initialisées sont très dangereuses dans un cas particulier : l’option register_ globals de PHP. Ce paramètre contrôle si les variables peuvent ou non, être définies directement à partir des arguments queryString inclus dans l’URL. La valeur par défaut de register_globals est Off, qui empêche l’assignation URL des variables.

Mais, si elle est sur On, le premier utilisateur venu peut manipuler directement des variables scripts en incluant des assignations sur l’URL. Ainsi, si votre script utilise la variable authentication- Passed pour indiquer que l’utilisateur a été authentifié, un mauvais plaisant pourrait simplement ajouter la chaîne « authentication Passed=1 » à un URL, contournant ainsi purement et simplement votre code d’authentification.

La parade évidente contre un tel abus est de s’assurer que register_ globals conserve sa valeur Off par défaut. Pour plus d’exemples des vulnérabilités concernant register_ globals, voir php.net/register_globals

Téléchargez gratuitement cette ressource

Guide de facturation électronique, voie royale pour le DAF et la digitalisation de la fonction finance

Guide de facturation électronique, voie royale pour le DAF et la digitalisation de la fonction finance

Ce livre blanc expose les problématiques auxquelles sont confrontés les DAF modernes et souligne les bénéfices de la facturation électronique pour la trésorerie. Il dévoile également le processus de déploiement de ce projet de transformation digitale que la réglementation rendra bientôt obligatoire.

Tech - Par iTPro - Publié le 24 juin 2010