English English French French Spanish Spanish German German
Geekflare est soutenu par notre public. Nous pouvons gagner des commissions d'affiliation en achetant des liens sur ce site.
Partager sur:

Comment bloquer .git dans Apache, Nginx et Cloudflare?

Scanner de sécurité des applications Web Invicti – la seule solution qui offre une vérification automatique des vulnérabilités avec Proof-Based Scanning™.

N'exposez pas le dossier .git, qui peut contenir des informations sensibles.

Lorsque vous initialisez et déployez votre application via Git, cela crée un .git dossier contenant les informations nécessaires. Si .git est accessible via un serveur Web ou une interface sur Internet, il peut potentiellement fuir des données sensibles.

Pire encore, si vous avez des informations d'identification stockées dans un fichier de configuration.

Utilisez ceux-ci outils pour trouver les informations d'identification dans le référentiel GitHub.

Si vous n'êtes pas sûr d'avoir .git quelque part sur vos applications Web, vous pouvez utiliser un scanner de vulnérabilité de sécurité comme OpenVAS, Gitjackeur, Ou d'autres mentionné ici.

Gitjacker est plus que de détecter le répertoire .git. Il télécharge le répertoire entier.

Il existe plusieurs façons de gérer cela.

Vous pouvez choisir de ne pas garder .git dossier sur le serveur ou bloquer toute demande. Le blocage de la demande est assez simple, et c'est ainsi que vous pouvez le faire en fonction du serveur Web que vous utilisez.

Nginx

Si vous utilisez Nginx, vous pouvez ajouter les éléments suivants location directive en nginx.conf filet

location ~ /\.git {
  deny all;
}

Ce qui précède demanderait à Nginx de lancer 403 comme ci-dessous chaque fois qu'il y a une requête contenant .git

Sinon, vous pouvez renvoyer 404 si vous ne voulez pas qu'un attaquant suppose que vous avez .git sur le serveur.

location ~ /\.git {
  return 404;
}

Et cela reviendrait le Code d'état HTTP comme 404 comme ci-dessous.

Quoi que vous choisissiez, n'oubliez pas de redémarrer le Nginx après avoir modifié la configuration.

service nginx restart

Apache HTTP

Voyons comment bloquer .git dans le serveur Web Apache. Vous pouvez utiliser RedirectMatch or DirectoryMatch pour y parvenir.

L'utilisation de RedirectMatch est probablement la plus simple. Il vous suffit d'ajouter ce qui suit dans httpd.conf  or .htaccess fichier.

RedirectMatch 404 /\.git

Ce qui précède lancerait 404 lorsque quelqu'un accède à .git, et ce qui suit affichera 403.

RedirectMatch 403 /\.git

Ensuite, essayons d'utiliser la règle DirectoryMatch en ajoutant ce qui suit dans httpd.conf fichier.

<DirectoryMatch "^/.*/\.git/">
  Deny from all
</Directorymatch>

Redémarrez Apache et accédez à l'URL, y compris .git; il affichera 403 Erreur interdite.

Cloudflare

C'est mon préféré. Bloquez la demande au bord!

Mais, comme vous pouvez le deviner, cela ne fonctionnera que si votre site est accéléré grâce au Cloudflare réseau.

  • Connectez-vous à Cloudflare
  • Allez dans l'onglet Pare-feu >> Règles de pare-feu >> Créer une règle de pare-feu

  • Donnez un nom à la règle - Bloquer GIT
  • Sélectionner un champ - URI
  • Opérateur - contient
  • Valeur - .git
  • Choisissez une action - Bloquer et enregistrer

Il faudra environ 1 minute pour propager la règle dans tous les centres de données Cloudflare. Une fois terminé, Cloudflare fera le reste.

Une chose à noter, lors de la mise en œuvre de la règle de pare-feu Cloudflare pour bloquer, vous devez vous assurer que origine n'est pas exposé. Sinon, un attaquant peut contourner Cloudflare pour accéder aux fichiers .git.

Conclusion

J'espère que ce qui précède vous aidera à atténuer le risque d'exposition du répertoire .git.

Merci à nos commanditaires
Plus de bonnes lectures sur Apache HTTP
Alimentez votre entreprise
Certains des outils et services pour aider votre entreprise à se développer.
  • Invicti utilise Proof-Based Scanning™ pour vérifier automatiquement les vulnérabilités identifiées et générer des résultats exploitables en quelques heures seulement.
    Essayez Invicti
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.
    Essayez Brightdata
  • Semrush est une solution de marketing numérique tout-en-un avec plus de 50 outils de référencement, de médias sociaux et de marketing de contenu.
    Essayez Semrush
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.
    Essayez Intruder