Question : Perl + Unix : Les pratiques de sécurité de téléchargement de dossier

Salut chacun,

I AM un programmeur de Perl de vétéran, mais assez nouveau à la sécurité d'Unix. J'avais utilisé pendant longtemps le module de cgi pour manipuler des téléchargements, mais n'ai pas vraiment prêté beaucoup d'attention aux problèmes de sécurité. jusqu'ici. affaires de question du

This spécifiquement avec Unix, des utilisateurs, des groupes, des permissions de dossier et des endroits d'annuaire. Je n'ai aucun problème faire l'amende de travail de téléchargements juste, mais je me demande ce que les pratiques are.

Here sont ma question spécifique : le

- je ne suis pas un utilisateur privilégié sur ce system
- de Linux mes manuscrits tous de Perl courus sous l'utilisateur « apache » et suis un membre Br/>- d'apache'< de groupe le 'tous les annuaires ou des dossiers que je me crée sont créés avec le propriétaire « tom » et groupe 'le Br/>- de dev'< je n'ai pas des permissions au téléchargement de chown ou de chgrp
- I toujours à un annuaire j'ai créé 'l'échouer appelé de téléchargements du Br/>- d'uploads'< à moins que l'annuaire de « téléchargements » chmodded à 777 <-- SÉCURITÉ RISK

Since je ne peux pas « les téléchargements de réalisateur de chown » qui me permettraient au moins au « chmod 774 téléchargements » quoi encore peut je faire ?

Thanks pour votre conseil utile à l'avance,

Tom
class= de

Réponse : Perl + Unix : Les pratiques de sécurité de téléchargement de dossier

Dans le cas que vous êtes en ce moment, je ferait ces recommandations :
- Créer un système de fichiers séparé sans attribut exécutable. /tmp/yourfolder a pu être assez. Ceci prendra soin du fait que vous devez faire limiter des téléchargements, ainsi un système de fichiers séparé de /tmp est la meilleure chose à faire avec un Linux dans la production. si vous n'avez pas cela, vous pouvez demander à la racine pour créer un dossier et pour le monter comme système de fichiers séparé, avec l'option de noexec. cela fonctionnera aussi bien.
  Dans ce cas-ci, si le point de montage est possédé par la racine et le groupe « apache », vous devez placer ces permissions au temps de bâti : 2775 pour les dossiers, et assurent des dossiers sont à 664 avec apache : apache en tant que propriétaire : groupe.

- Demander à la racine pour créer un crontab prenant ces dossiers de la chemise et de l'apache provisoires : permissions d'apache, à l'annuaire final avec les permissions et la propriété correctes. dire le wwwdata : wwwgroup et permissions 664 pour des dossiers et 775 pour des annuaires. Ce sera assez pour qu'apache accède mais en dehors des autorisations d'écriture.

- Jamais. Jamais gauche les dossiers dans votre web server possédé par le même utilisateur qui court apache. c'est pourquoi je recommande de créer quelque chose comme le wwwdata : wwwgroup

Espérer cette aide vous. J'ai ce genre d'installation fonctionner au trafic très élevé et aux sites Web très sensibles sans problèmes.
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us