Évaluation de la sécurité des variables $_SERVER
Les en-têtes de requête HTTP contiennent souvent des informations qui peuvent être contrôlées par l'utilisateur. Par conséquent, de nombreuses variables $_SERVER peuvent être entachées par des entrées malveillantes et devenir une source d'attaque.
Comprendre les valeurs contrôlées
Variables contrôlées par le serveur, telles que « SERVER_ADDR » et 'SERVER_SOFTWARE', sont définis par la configuration du serveur et sont intrinsèquement sûrs.
Partiellement contrôlé par le serveur les variables dépendent de la requête et ont des valeurs valides limitées, ce qui les rend fiables. Les exemples incluent « REMOTE_ADDR » et « REQUEST_TIME ».
Valeurs arbitraires contrôlées par l'utilisateur
En revanche, les valeurs arbitraires contrôlées par l'utilisateur peuvent contenir n'importe quelle entrée envoyée par le client, y compris du contenu potentiellement malveillant. Les variables telles que « HTTP_USER_AGENT » et « PHP_SELF » entrent dans cette catégorie.
Évaluation de la fiabilité
La détermination de la fiabilité des variables $_SERVER dépend de l'utilisation spécifique et de la configuration du serveur. . Par exemple :
Catégorisation des variables $_SERVER
Considérez le contexte et les conséquences potentielles avant de faire confiance à un $_SERVER variable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!