Faut-il analyser les fichiers téléversés dans une application auto-hébergée ? Liste de contrôle pratique pour la sécurité
L’analyse antimalware peut réduire les risques, mais ne garantit pas qu’un fichier téléversé est sûr. Utilisez cette liste de contrôle pour examiner où vont les fichiers, comment les résultats d’analyse sont traités et quelles protections doivent les entourer.

Commencez par les fichiers et par les personnes ou services qui les traitent
La pertinence d’une analyse antimalware des fichiers téléversés dans une application auto-hébergée dépend de ce que l’application accepte et de ce qui se passe après l’arrivée d’un fichier. Un document stocké en vue d’un téléchargement occasionnel suit un processus différent d’un fichier immédiatement prévisualisé, indexé, converti ou transmis à un autre service.
Cartographiez le parcours complet, pas seulement le formulaire de téléversement. Prenez en compte la personne qui envoie le fichier, l’application qui le stocke, toutes les personnes qui peuvent le consulter ou le télécharger, ainsi que tout processus automatisé susceptible de le lire ou de le transformer.
- Répertoriez chaque application et chaque moyen de téléversement, y compris les parcours administratifs ou via API, le cas échéant.
- Notez qui peut envoyer des fichiers : visiteurs publics, clients, employés, administrateurs ou services connectés.
- Identifiez les types et tailles de fichiers acceptés par l’application, et vérifiez si elle accepte les archives ou les fichiers susceptibles de déclencher un traitement automatisé.
- Indiquez qui peut accéder aux fichiers téléversés et si des aperçus, l’indexation, la conversion ou des intégrations les traitent avant qu’une personne ne les examine.
- Accordez la priorité aux processus où les fichiers proviennent d’utilisateurs moins dignes de confiance ou sont traités automatiquement.

Vérifiez la prise en charge de l’analyse au lieu de supposer qu’elle est incluse
La présence d’une fonction de téléversement ne signifie pas, à elle seule, que les fichiers envoyés sont analysés. Consultez la documentation officielle de l’application pour vérifier si elle prend en charge une intégration d’analyse, quels parcours de téléversement sont couverts et à quel moment l’analyse a lieu.
Recherchez des détails opérationnels, pas seulement le nom d’une fonctionnalité : l’analyse a-t-elle lieu avant l’enregistrement, la mise à disposition ou le traitement du fichier ? Quels types de fichiers et emplacements de stockage sont couverts ? Que fait l’application lorsqu’elle ne parvient pas à classer un résultat ? Si la documentation manque de clarté, considérez le fonctionnement comme non vérifié et testez-le dans un environnement sûr.
- Confirmez que l’intégration est prise en charge pour l’application et le mode de déploiement que vous utilisez réellement.
- Vérifiez si l’analyse est intégrée à l’application, nécessite un service distinct ou dépend d’une configuration que vous devez maintenir.
- Vérifiez si tous les parcours de téléversement pertinents sont analysés, y compris les envois via API et les fichiers ajoutés par des processus administratifs.
- Examinez les limites documentées, comme les formats pris en charge, le traitement des archives, les limites de taille et le moment de l’analyse.
- Ne déduisez pas que l’analyse est prise en charge du seul fait que la plateforme d’hébergement l’offre ou que l’application s’exécute dans un conteneur.

Définissez le parcours du téléversement à la mise à disposition
Une conception utile permet de connaître clairement l’état d’un fichier. Envisagez de rendre tout nouveau téléversement inaccessible aux utilisateurs ordinaires et aux traitements en aval jusqu’à la fin de l’analyse. Si celle-ci signale un problème, conservez le fichier dans un état de quarantaine restreint au lieu de l’exposer par un parcours de téléchargement ou d’aperçu.
La mise en œuvre exacte dépend de l’application et des fonctionnalités documentées. Si elle ne peut pas retenir un fichier le temps de son examen ou isoler un fichier signalé, identifiez cette limite avant d’activer le processus, puis déterminez si une autre mesure de protection ou une configuration différente de l’application est nécessaire.
Pour assurer une gestion sûre du stockage, la liste de contrôle de SANS sur les téléversements sécurisés conseille de créer un nouveau nom de fichier plutôt que d’utiliser celui fourni par l’utilisateur comme nom de fichier local, et de stocker le fichier en dehors de l’emplacement du système local décrit dans ses recommandations. Consultez la liste de contrôle d’origine pour le contexte : https://www.sans.org/blog/8-basic-rules-to-implement-secure-file-uploads
- Définissez à partir de quel moment un fichier peut être téléchargé, prévisualisé, recherché ou mis à disposition d’une intégration.
- Séparez les fichiers en attente ou en quarantaine de l’accès ordinaire des utilisateurs, dans la mesure où l’application le permet.
- Limitez l’accès aux fichiers en quarantaine aux personnes désignées pour intervenir ; précisez qui peut les examiner ou les libérer, et dans quelles conditions.
- Évitez d’utiliser le nom de fichier fourni par l’utilisateur comme nom de fichier stocké ; si l’application le permet de manière sûre, conservez séparément les informations utiles sur le nom d’origine.
- Vérifiez que le stockage des fichiers n’est pas exposé par inadvertance sur un chemin public ou auprès d’un service disposant d’un accès plus large que nécessaire.
Définissez une politique pour les échecs d’analyse et les résultats incertains
Un scanner peut être indisponible, prendre trop de temps ou renvoyer un résultat qui ne permet pas de déterminer si un fichier est sûr. Décidez à l’avance de ce que l’application doit faire dans chacun de ces cas, plutôt que d’attendre une panne.
Pour les processus où l’exposition d’un fichier non vérifié présenterait un risque inacceptable, une politique prudente consiste à le garder indisponible jusqu’à ce que l’analyse aboutisse ou qu’une personne autorisée prenne une décision documentée. Autoriser les téléversements à se poursuivre en cas d’échec de l’analyse peut être plus pratique, mais crée une faille que les administrateurs doivent explicitement accepter et atténuer.
- Définissez des résultats distincts pour les analyses concluantes sans détection, les fichiers signalés, les échecs, les délais d’attente dépassés et les résultats non concluants.
- Décidez si un fichier non analysé doit être retenu, rejeté ou autorisé dans le cadre d’une exception documentée ; ne laissez pas ce comportement implicite.
- Désignez un responsable et un processus de réponse en cas d’indisponibilité du scanner, notamment pour informer les utilisateurs si les téléversements sont retardés ou rejetés.
- Consignez qui peut examiner un élément en quarantaine, de quelles preuves cette personne a besoin et qui peut autoriser sa libération ou sa suppression.
- Ne considérez pas l’absence de résultat d’analyse comme un résultat concluant sans détection.
Testez le processus, y compris les modes de défaillance
La configuration d’un scanner ne prouve pas que l’ensemble du parcours de téléversement fonctionne comme prévu. Testez l’application dans un environnement contrôlé avec des fichiers et des scénarios inoffensifs représentatifs, et vérifiez ce que les utilisateurs et les administrateurs voient à chaque étape.
N’utilisez pas de fichiers malveillants réels pour les tests de routine. Préparez des cas de test sûrs adaptés à l’application et au produit d’analyse, et suivez leur documentation. Ne vérifiez pas uniquement la réponse au téléversement : assurez-vous aussi qu’un fichier ne peut pas être consulté par l’intermédiaire des aperçus, des téléchargements, de l’indexation ou d’un traitement automatisé pendant que l’analyse est en attente.
- Vérifiez comment un téléversement accepté passe de l’état « en attente » à l’état « disponible » après une analyse concluante.
- Vérifiez qu’un téléversement rejeté ou signalé ne peut être ni téléchargé, ni prévisualisé, ni traité par un autre service.
- Simulez l’indisponibilité du scanner, un dépassement du délai d’attente et un résultat non concluant ; vérifiez que la politique choisie est respectée.
- Examinez les journaux pour vous assurer qu’ils contiennent suffisamment d’informations pour enquêter sur un événement, sans exposer inutilement le contenu des fichiers ni des données sensibles.
- Vérifiez que l’utilisateur reçoit un message d’état ou d’erreur clair et qu’un administrateur peut déterminer qui doit prendre la prochaine mesure.
Intégrez l’analyse à un ensemble plus large de mesures de protection
L’analyse constitue une couche de protection, mais ne garantit pas qu’un fichier est sûr. Trend Micro Research recommande d’analyser les fichiers avant de les enregistrer ou de les traiter dans l’outil de téléversement d’une application afin de contribuer à éviter les logiciels malveillants ; cette recommandation ne prouve pas que l’analyse détecte toutes les menaces ni qu’elle remplace les autres contrôles. Voir : https://www.trendmicro.com/en_us/research/24/d/file-scan-before-upload.html
Réduisez la probabilité et l’impact des problèmes liés au scanner. Examinez qui peut téléverser des fichiers, maintenez l’application et les composants d’analyse à jour, restreignez l’accès aux fichiers stockés et vérifiez que vos plans de sauvegarde et de réponse aux incidents tiennent compte des données téléversées. Ces mesures couvrent différentes parties du risque ; aucune ne doit être considérée comme un substitut aux autres.
- N’accordez les droits de téléversement qu’aux utilisateurs et services qui en ont besoin.
- Définissez et réexaminez périodiquement les limites de taille, de type et d’archive en fonction de l’utilisation prévue de l’application.
- Appliquez le principe du moindre privilège à l’application, au stockage, au scanner et à tous les services qui traitent les fichiers.
- Maintenez l’application et ses composants de soutien à jour, en suivant les recommandations officielles du projet.
- Vérifiez que les sauvegardes couvrent les fichiers et la configuration dont vous avez besoin, et précisez qui est responsable de la restauration et de la réponse aux incidents.
- Documentez les risques résiduels acceptés, les contacts à prévenir et les étapes à suivre pour contenir ou examiner un téléversement suspect.
Liste de contrôle pratique avant la mise en service
Avant d’activer les téléversements — ou de modifier leur traitement — assurez-vous que l’administrateur responsable peut répondre aux questions suivantes. Si une réponse importante est inconnue, vérifiez-la dans la documentation du fournisseur ou au moyen d’un test contrôlé avant de vous fier au processus.
Cette liste couvre les principaux points à confirmer avant la mise en service.
- Quels utilisateurs et services peuvent téléverser des fichiers, et que devient chaque fichier ensuite ?
- L’application prend-elle officiellement en charge l’analyse dans ce déploiement, et quels parcours de téléversement couvre-t-elle ?
- À partir de quand un fichier peut-il être consulté ou traité, et que se passe-t-il s’il est signalé ou ne peut pas être analysé ?
- Qui peut accéder à la quarantaine et autoriser une libération exceptionnelle ?
- Les aperçus, téléchargements, intégrations, pannes de scanner et messages destinés aux utilisateurs ont-ils été testés ?
- Les autorisations, limites de fichiers, mises à jour, sauvegardes et responsabilités en matière d’incident ont-elles été examinées ?
Foire aux questions
Les réponses ci-dessous constituent un point de départ ; la documentation officielle de l’application détermine les contrôles disponibles pour un déploiement donné.
Consultez la documentation de l’application pour vérifier comment ces recommandations s’appliquent à votre déploiement.
Questions fréquentes
L’analyse antivirus garantit-elle la sécurité des fichiers téléversés ?
Non. L’analyse peut contribuer à détecter des logiciels malveillants, mais les éléments fournis ne prouvent pas qu’elle détecte toutes les menaces ni qu’elle garantit la sécurité. Maintenez en place les contrôles d’accès, les mises à jour et les pratiques sûres de traitement des fichiers comme mesures de protection distinctes.
Faut-il bloquer les téléversements si le scanner est indisponible ?
Choisissez le comportement en fonction du risque lié à l’exposition d’un fichier non vérifié. Pour les processus à risque plus élevé, garder les fichiers indisponibles jusqu’à la réussite de l’analyse ou à l’examen par une personne autorisée constitue un choix prudent. Documentez toute politique qui autorise la poursuite des téléversements sans analyse terminée.
Que dois-je vérifier dans la documentation de l’application ?
Vérifiez si l’analyse est officiellement prise en charge, quand elle a lieu, quels parcours de téléversement et types de fichiers elle couvre, et comment sont traités les résultats signalés, les échecs, les délais d’attente dépassés ou les résultats non concluants. Testez tout comportement que la documentation ne précise pas clairement.
Que faire si mon application ne prend pas en charge l’analyse des fichiers ?
Ne supposez pas qu’un scanner distinct peut être connecté de manière sûre sans prise en charge de l’application. Examinez les options documentées de l’application, déterminez s’il est possible de limiter les téléversements ou les traitements automatisés, et évaluez si l’application répond à vos exigences de sécurité avant de lui confier ce processus.
Sources et lectures complémentaires
- Importance of Scanning Files on Uploader Applications — Trend Micro Research
- 8 Basic Rules to Implement Secure File Uploads — SANS Institute