Téléversement sécurisé : 7 couches de validation avant qu'un fichier n'entre dans votre médiathèque
Téléversement sécurisé 7 couches de validation une fonctionnalité du module Médiathèque de Clustraly. Le téléversement sécurisé fait passer chaque fichier par sept couches de validation strictes extension, type réel, taille, nom randomisé avant tout stockage.
Extension, type réel, taille, nom : sept contrôles enchaînés vérifient chaque fichier avant qu'il n'atteigne votre bibliothèque. Vous téléversez, Clustraly garde la porte.
Chaque fichier prouve qu'il est sûr avant d'entrer
Vous déposez un fichier ; Clustraly se charge de douter à votre place. Avant qu'un média n'atteigne votre bibliothèque, il traverse sept contrôles enchaînés et un seul échec suffit à le bloquer.
Rien n'entre sur la seule foi de son nom. La validation s'exécute intégralement à chaque POST d'upload, et un fichier refusé ne touche jamais le disque.
- 7 couches appliquées à chaque téléversement
- Un fichier refusé n'atteint jamais le disque
- Aucune confiance accordée à la seule extension
- Même chaîne rejouée à chaque remplacement
Sept contrôles enchaînés, du nom au contenu réel
La sécurité ne tient pas à un seul verrou. Pour entrer, un fichier doit satisfaire les sept couches d'affilée : un attaquant devrait toutes les franchir, pas une seule.
Les premières couches inspectent le nom et l'extension ; les suivantes descendent jusqu'au type réel et à la taille, avant de réécrire le nom sur disque.
- Liste blanche : images, vidéos, audio, documents, archives, polices
- Liste noire des extensions exécutables (php, phtml, exe, sh, bat…)
- Doubles extensions bloquées, segment par segment
- Type MIME réel vérifié via finfo
Un fichier ne peut pas mentir sur ce qu'il est
Renommer un script en .png ne trompe pas Clustraly. La quatrième couche lit le type MIME réel via finfo et le compare à l'extension déclarée : au moindre écart, ou pour un type générique application/octet-stream, le fichier est rejeté.
Les images doivent en plus passer getimagesize (sauf .ico) : un fichier qui se prétend image sans en avoir la structure ne passe pas, et ses dimensions réelles sont enregistrées au passage.
- MIME réel comparé à l'extension, rejet en cas d'écart
- application/octet-stream systématiquement refusé
- getimagesize obligatoire pour les images (sauf ico)
- Largeur et hauteur réelles récupérées à la validation
Une limite que vous fixez, un nom impossible à deviner
Vous fixez la limite, le système la fait respecter. La sixième couche plafonne le poids de chaque fichier selon un réglage que vous contrôlez (general.upload_max_size, 50 Mo par défaut).
La septième couche réécrit le nom en une chaîne aléatoire de 32 caractères hexadécimaux : plus de collision, plus d'écrasement accidentel, plus d'URL devinable et un rangement automatique par année et par mois.
- Limite de taille configurable (réglage general.upload_max_size)
- Nom réécrit en 32 caractères hexadécimaux aléatoires
- Aucune collision ni écrasement de fichier existant
- Rangement automatique sous uploads/AAAA/MM
Remplacez un fichier sans jamais baisser la garde
Remplacer un visuel ne doit pas rouvrir une faille. Quand vous échangez le binaire d'un média, l'intégralité de la chaîne en sept couches assainissement SVG compris se rejoue sur le nouveau fichier.
L'ID du média reste identique, donc vos articles et pages qui le référencent continuent de fonctionner ; un nouveau nom randomisé est généré et les anciens fichiers sont nettoyés.
- Chaîne complète de validation rejouée sur le nouveau fichier
- ID conservé : références d'articles et de pages intactes
- Nouveau nom randomisé à chaque remplacement
Défense en profondeur, refus par défaut
Pour entrer, un fichier doit satisfaire les sept couches ; en échouer une seule suffit à le rejeter avant le disque. Associé à l'assainissement SVG, ce filtrage garde votre médiathèque exempte d'exécutables, de fichiers déguisés et de téléversements piégés sans que vous ayez à inspecter le moindre octet.
Questions fréquentes
Quels formats puis-je téléverser dans la médiathèque ?
Que se passe-t-il si un fichier cache sa vraie nature derrière une fausse extension ?
Le remplacement d'un fichier est-il aussi protégé que le premier téléversement ?
Puis-je ajuster la taille maximale autorisée ?
Fonctionnalités liées
Une médiathèque où seuls les bons fichiers entrent
Le téléversement sécurisé de Clustraly transforme chaque import en passage obligé à travers sept couches strictes. Vous gardez la main sur ce qui est autorisé ; le système, lui, refuse par défaut tout ce qui ne prouve pas sa légitimité à l'upload comme au remplacement.