2008-10-19 3 views
8

J'ai un fichier .ini avec des informations sensibles dans mon application php wab. Je vu refuser l'accès à l'aide d'un fichier .htaccess:Est-il sûr de refuser l'accès au fichier .ini dans .htaccess?

<files my.ini> 
    order deny,allow 
    deny from all 
</files> 

Je n'ai pas accès aux dossiers en dehors de htdocs, donc je ne peux pas déplacer le fichier .ini sur le territoire explorable.

Ma solution est-elle sûre?

Répondre

7

Le .htaccess bloquera l'accès à partir du Web. Toutefois, si vous utilisez un environnement d'hébergement partagé, il est possible que d'autres utilisateurs puissent accéder à votre ini. Si c'est sur un serveur (virtuel privé) et que vous êtes le seul utilisateur de ce serveur, vous êtes en sécurité.

En cas d'hébergement partagé, cela dépend de la configuration du serveur. Pour plus d'informations, lire: PHP Security in a shared hosting environment

Vous pouvez installer temporairement PHPShell et parcourir le système de fichiers du serveur pour vérifier si votre serveur est vulnérable. (nécessite quelques connaissances en ligne de commande)

2

Le fichier ne sera pas visible depuis Apache. Évidemment, la meilleure option est de le mettre en dehors de la racine de votre site. Si vous ne pouvez pas faire cela, les fichiers .htaccess (ou les directives similaires dans vos configs apache) sont à peu près votre seule option.

4

Une autre bonne solution et mon favori personnel (en particulier lors du développement de code qui pourrait ne pas rester sous mon contrôle strict .htaccess) est de sécuriser le fichier .ini réel. Merci à une âme aimable here - user notes: pd at frozen-bits dot de, ce que je fais est:

my.ini -> changes to my.ini.php 

my.ini.php commence:

;<?php 
;die(); // For further security 
;/* 
    [category] 
    name="value" 

;*/ 

fonctionne parfaitement! Accédez directement au fichier et tout ce que vous voyez est ';' et il s'agit d'un fichier .ini valide et analysable. Ce qui est de ne pas aimer :)

Quelques notes sur la mise en œuvre réelle (excuses si cela compte comme « Overshare » mais peut-être sauver quelqu'un quelque temps):

  1. Ce fichier rend mon IDE très contrariée et il continue à essayer à auto-reformater, ce qui rend PHP Upset. Les bénédictions soient sur Notepad ++.
  2. Ne pas oublier la fermeture ;*/. Cela fonctionne toujours si vous le laissez, mais PHP vous avertit qu'il est sur le point de devenir bouleversé.

Trié.

Questions connexes