Maison  >  Article  >  développement back-end  >  Protection de sécurité PHP : renforcer le contrôle des autorisations des répertoires

Protection de sécurité PHP : renforcer le contrôle des autorisations des répertoires

WBOY
WBOYoriginal
2023-06-24 11:53:58687parcourir

Dans le développement Web, les répertoires jouent un rôle important dans la fourniture des ressources requises par les applications Web. Cependant, si les autorisations d'accès au répertoire de fichiers sont incorrectes, cela peut facilement entraîner des problèmes de sécurité Web. Par exemple, un tiers non autorisé peut télécharger des fichiers malveillants sur votre serveur, provoquant ainsi une attaque du serveur. Par conséquent, pendant le processus de développement d’applications Web, le contrôle des autorisations des répertoires doit être renforcé pour empêcher les accès illégaux et les téléchargements de fichiers malveillants.

Afin de renforcer le contrôle des autorisations de répertoire, nous pouvons prendre les mesures suivantes :

  1. Restreindre les autorisations d'accès au répertoire

Dans les systèmes Linux, les autorisations de répertoire peuvent être contrôlées via la commande chmod. La commande spécifique est la suivante :

chmod 700 /var/www/html/uploads/

La signification de la commande ci-dessus est que seul le propriétaire du répertoire (généralement le processus du serveur Web) a des autorisations d'accès, d'écriture et d'exécution sur le répertoire, et les autres n'ont pas d'autorisations d'accès.

  1. Interdire l'exécution de fichiers de script

Certains répertoires sont utilisés pour stocker des fichiers de script, tels que les fichiers de script PHP, qui peuvent être exécutés par le processus du serveur Web. Si le processus du serveur Web est compromis, ce répertoire peut être utilisé pour stocker et exécuter des scripts malveillants. Pour éviter que cela ne se produise, nous pouvons désactiver l'exécution des fichiers de script dans le répertoire via le fichier de configuration Apache. La méthode spécifique est la suivante :

Dans le fichier de configuration Apache, recherchez le code suivant :

<Directory /var/www/html/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

Modifiez-le en :

<Directory /var/www/html/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
    AddHandler txt .txt
    AddHandler html .html
    AddHandler htm .htm
    AddHandler php .php .inc
</Directory>

<FilesMatch ".(php|inc)$">
    Order Deny,Allow
    Deny from all
</FilesMatch>

Dans le fichier de configuration ci-dessus, nous avons ajouté quelques types MIME afin que le serveur Apache puisse servir du HTML , TXT et servir des fichiers PHP. Ensuite, en faisant correspondre les noms de fichiers PHP et INC dans la balise b5b7f795fbd764be2f6705fd2f78034b, nous désactivons l'exécution des fichiers PHP et INC dans tous les répertoires.

  1. Prévenir les vulnérabilités de téléchargement de fichiers

Dans certaines applications Web, les utilisateurs peuvent télécharger des fichiers tels que des images et des documents. Cependant, ces fichiers téléchargés peuvent contenir du code malveillant et les attaquants peuvent exploiter les vulnérabilités de téléchargement des fichiers utiles pour transmettre des fichiers malveillants au serveur. Pour prévenir les attaques, nous pouvons renforcer la sécurité des téléchargements de fichiers en :

  • Restreindre le type de fichiers téléchargés.
    Seuls les types de fichiers sûrs peuvent être téléchargés, tels que des images, des documents, de l'audio, etc. Les types de fichiers dangereux ne sont pas autorisés à être téléchargés, tels que EXE, BAT, DLL et autres fichiers.
  • Filtrer les fichiers téléchargés.
    Filtrez les fichiers téléchargés pour garantir la sécurité des fichiers téléchargés. Vous pouvez utiliser des plug-ins tiers ou des outils open source pour vérifier si les fichiers téléchargés contiennent du code malveillant.
  • Stockez les fichiers téléchargés dans un répertoire sécurisé.
    Stockez les fichiers téléchargés dans un répertoire sécurisé afin que le serveur Web ne soit pas autorisé à exécuter les fichiers téléchargés. Dans le même temps, il peut également empêcher l’exécution de fichiers malveillants transmis en exploitant les vulnérabilités de téléchargement de fichiers.

En général, lors du développement d'applications Web, le renforcement du contrôle des autorisations d'annuaire est un moyen important de se défendre contre les attaques Web. En contrôlant raisonnablement et strictement les autorisations d'accès aux répertoires de fichiers, les comportements malveillants peuvent être efficacement réduits. Le contrôle des autorisations d'annuaire est une condition préalable nécessaire à la sécurité Web, et les programmeurs et les gestionnaires doivent y prêter attention.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn