


Comment puis-je vérifier en toute sécurité les types de fichiers image téléchargés en PHP ?
Nov 30, 2024 pm 07:05 PMVérification du type de fichier de débogage en PHP
Malgré l'utilisation d'une approche courante pour valider les types de fichiers image, certains utilisateurs ont rencontré des erreurs lors du processus de téléchargement.
L'extrait de code fourni utilise la propriété $_FILES['fupload']['type'] fournie par l'utilisateur, qui est susceptible d'être manipulée par des logiciels malveillants. utilisateurs. Pour résoudre cette vulnérabilité, il a été suggéré que l'utilisation de mime_content_type() améliorerait la précision.
Résoudre le problème
Cependant, la solution recommandée consiste à éviter de s'appuyer entièrement sur des valeurs définies par l'utilisateur. Au lieu de cela, il est conseillé d'effectuer votre propre vérification de type.
Pour les images, la fonction exif_imagetype() offre une méthode fiable pour déterminer le véritable format du fichier :
$allowedTypes = array(IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF); $detectedType = exif_imagetype($_FILES['fupload']['tmp_name']); $error = !in_array($detectedType, $allowedTypes);
Cette approche vérifie le directement la signature binaire de l'image, éliminant ainsi la possibilité pour les utilisateurs de manipuler le type de fichier.
Alternativement, pour une vérification plus avancée du type de fichier, envisagez d'utiliser les fonctions finfo si votre le serveur les prend en charge.
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!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium)

Travailler avec les données de session Flash dans Laravel

Misque de réponse HTTP simplifié dans les tests Laravel

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST

Construisez une application React avec un Laravel Back End: Partie 2, React

12 meilleurs scripts de chat PHP sur Codecanyon
