web-dev-qa-db-fra.com

Est-il nécessaire de numériser les téléchargements de fichiers des utilisateurs par antivirus?

L'application Web permet aux utilisateurs de télécharger des fichiers. Est-il nécessaire de numériser ces fichiers par antivirus?

Je voudrais entendre la réponse dans deux scénarios:

  1. Le type de fichier n'est pas coché lors du téléchargement. Ils sont stockés dans un dossier qui n'est pas directement accessible depuis Internet. Les fichiers n'ont pas les autorisations à exécuter. Ensuite, l'utilisateur peut interroger une URL et les fichiers seront renvoyés avec la disposition de contenu: pièce jointe
  2. Le type de fichier n'est pas coché lors du téléchargement. Son contenu est analysé avec certains HTML/XML/JSON/etc. analyseur. Après analyse de pantalon n'est pas stocké au serveur
6
Andrei Botalov

Je ne vois aucune raison d'utiliser un scanner de virus dans le second cas. Les chances d'une vulnérabilité d'exécution du code dans un anti-virus semblent plus grande que celle d'une vulnérabilité dans mes bibliothèques d'analyse. Surtout si les bibliothèques d'analyse sont écrites dans une langue de sécurité de la mémoire.

Dans le premier cas, j'utiliserais un anti-virus, car offrant des fichiers de virus au téléchargement ne sonne pas comme une bonne idée. Systèmes de réputation des personnes et de sites Web automatisés (par exemple, Google Safe Navigation) pourrait associer des téléchargements de virus avec votre site Web blessant sa réputation.
Je pourrais toujours proposer un tel fichier à télécharger, mais seulement après une avertissement explicite et une confirmation de l'utilisateur. De préférence une confirmation qui empêche les bots de le télécharger.

6
CodesInChaos

Dans le scénario 1, vous pouvez supposer en toute sécurité que le contenu ne sera pas exécuté sur le serveur et que l'utilisateur sera forcé de télécharger le fichier plutôt que de la consulter dans leur navigateur. Ceci est raisonnablement Sûr de votre point de vue, car vous déchargez la responsabilité de la vérification du fichier à vos utilisateurs.

Dans le scénario 2, je l'exécuterais certainement à travers un AV. Votre bibliothèque d'analyses peut avoir une vulnérabilité, de sorte que vous souhaitiez certainement faire des chèques de base avant de le remettre à la bibliothèque.

4
Polynomial

Si quelqu'un vous a demandé de porter un colis scellé dans le cadre de vos bagages sur un vol commercial, n'est-ce pas?

Même si vous fournissez simplement un répondant aux utilisateurs de stocker leurs propres fichiers plutôt que de ré-publier le contenu téléchargé, il serait imprudent d'accepter tout ce qui est lancé sur votre serveur.

Cependant, le balayage AV n'est pas le seul moyen de se protéger contre les logiciels malveillants - en vérifiant le mimetype et à l'aide d'une méthode de conversion sans perte pour basculer entre les formats peut neutraliser une grande partie de menaces (par exemple convertir JPG en PNG, MSWord Doc en PDF *). Si vous avez implémenté votre propre analyseur pour le fichier et c'est un format de base tel que XML, vous vérifiez déjà le contenu - la numérisation AV est probablement surchargée. Mais comme tous les codes, il devrait être sécurisé.

*) Mais n'utilisez pas de msword pour faire la conversion!

1
symcbean

Le type de fichier n'est pas coché lors du téléchargement. Ils sont stockés dans un dossier qui n'est pas directement accessible depuis Internet. Les fichiers n'ont pas les autorisations à exécuter. Ensuite, l'utilisateur peut interroger une URL et les fichiers seront renvoyés avec la disposition de contenu: pièce jointe

Numérisation avant de livrer la pièce jointe n'est que la chose courtoise à faire, mais il y a beaucoup de choses qui posent problème à stocker mais qui transmettront une analyse de virus tout à fait.

Cela peut être un tad paranoïaque, mais si vous n'écrivez pas intentionnellement de logiciels qui permettent aux gens de plantons des preuves qui vous incrontent, n'écrivez pas involontairement un logiciel qui le fait.

Quel type d'informations vous connectez-vous sur les téléchargeurs? Pourriez-vous avoir des ennemis qui permettraient de télécharger de la pornographie enfantine ou de faire des plans à la bombe à votre serveur, puis envoyez-vous un conseil anonyme à la police?

Le type de fichier n'est pas coché lors du téléchargement. Son contenu est analysé avec certains HTML/XML/JSON/etc. analyseur. Après avoir analysé le fichier n'est pas stocké sur le serveur.

Les scanners anti-virus sont peu susceptibles d'être utiles ici. Même question que ci-dessus. Pouvez-vous vérifier les informations que vous extrayez des fichiers ou de prouver que quelles que soient les informations que vous stockez provenaient d'une source externe?

1
Mike Samuel