Protéger l'accès à vos dossier .svn

TechCrunch à récemment repris un article Russe indiquant que de nombreux sites (plus de 3300) laissaient en libre accès leur dossier .svn.

L'article a ensuite été repris par Chris Sullo via le HP Security Laboratory Blog, afin de vous proposer quelques techniques afin de vérifier que votre site affiche ou pas le contenu de ces fameux dossiers et comment faire dans ce cas.

Il est important de savoir que l'accès aux dossier .svn est un risque non négligeable puisque ces dossiers peuvent contenir le code source de vos fichier, et donc parfois les mots de passes d'accès aux divers services (base de donnée, réseaux sociaux via API, etc).

Vous qui utilisez Subversion, êtes-vous sûr que vos .svn ne sont pas accessibles ? vraiment ?

Afin de sécuriser votre serveur, voici deux petits morceaux d'Apache évitant vos visiteurs d'accéder à ces dossiers.

Le premier se place dans le fichier de configuration de votre VirtualHost, et interdit simplement l'accès aux répertoires .svn :

<Directory ~ “^\.svn”>
     Deny from all
</Directory>

(facile ;))

Le second viens se mettre dans un fichier .htaccess, dans le cas ou vous n'auriez pas accès à la configuration d'Apache (cas typique d'un hébergement standard) :

RewriteEngine on
# Hide .SVN Folders
RewriteRule ^(.*/)*\.svn/ / [F,L]

Merci @Fettes Programming Solutions pour les bouts de code très utiles ;)

Une autre alternative, si vous n'utilisez plus SVN en production, et que vous n'avez fait que copier les fichier, c'est de supprimer récursivement les dossiers .svn de votre site/application. Pour ce faire, nous avions listé les commandes (linux) possible lors d'un précédent article.

Filed under  //  General   Security   access   folder   htaccess   protect   svn  
Posted by Cyril Nicodème 

Astuce : Supprimer récursivement les répertoires .svn

Une petite commande bien utile donnée par CrainBrandy qui permet de supprimer récursivement tous les répertoires .svn en commençant par un dossier.

Je suis sûr que vous avez déjà été confrontés à ce genre de problème ! :p

rm -rf `find . -type d -name .svn`

ou vous pouvez aussi faire :

find . -type d -name .svn -exec rm -rf {} \;

à vous de choisir votre méthode préférée.

Filed under  //  Development   Scripts   Unix/Linux   bash   commande   dossier   linux   repertoire   récursif   récursivement   shell   supprimer   svn  
Posted by Cyril Nicodème 

Installer Eclipse avec le plugin PHP (pdt) : Subclipse

Encore une nouvelle astuce pour installer un plugin essentiel dans la programmation, j'ai nommé Subversion.

Subversion (svn) est considéré comme étant meilleur que CVS, c'est pourquoi je parlerai de l'installation de Svn et non Cvs.

Comme d'hab, c'est tout simple, dans Eclipse, Help, Software Update, Find And Install. Cliquez sur New Remote Site et mettez :
http://subclipse.tigris.org/update_1.2.x

et voila, vous pouvez maintenant faire un nouveau projet en choisissant "Checkout Project From SVN" si le projet existe déjà et hop ! l'affaire est dans le sac :)

Pour mettre à jour le projet depuis le serveur :
team > update

Et pour faire une mise à jour de vos modification vers le serveur :
team > commit

Wala ! :)

Filed under  //  Howtos   Unix/Linux   commit   cvs   eclipse   release   subversion   svn   team   tigris   update  
Posted by Cyril Nicodème