English English French French Spanish Spanish German German
Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Wie blockiere ich .git in Apache, Nginx und Cloudflare?

Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Stellen Sie den Ordner .git nicht bereit, der vertrauliche Informationen enthalten kann.

Wenn Sie Ihre Anwendung über Git initialisieren und bereitstellen, wird eine erstellt .git Ordner, der die erforderlichen Informationen enthält. Wenn .git Auf den Ordner kann über einen Webserver oder ein Frontend über das Internet zugegriffen werden. Dadurch können möglicherweise vertrauliche Daten verloren gehen.

Schlimmer noch, wenn Sie Anmeldeinformationen in einer Konfigurationsdatei gespeichert haben.

Benutze diese Werkzeuge um Anmeldeinformationen im GitHub-Repository zu finden.

Wenn Sie nicht sicher sind, ob Sie irgendwo in Ihren Webanwendungen .git haben, können Sie einen Sicherheitslücken-Scanner wie verwenden OpenVAS, GitjackerOder andere hier erwähnt.

Gitjacker ist mehr als das Erkennen des .git-Verzeichnisses. Es lädt das gesamte Verzeichnis herunter.

Es gibt mehrere Möglichkeiten, damit umzugehen.

Sie können sich dafür entscheiden, nicht zu behalten .git Ordner auf dem Server oder blockieren Sie jede Anfrage. Das Blockieren der Anfrage ist ziemlich einfach, und dies können Sie je nach verwendetem Webserver erreichen.

Nginx

Wenn Sie Nginx verwenden, können Sie Folgendes hinzufügen location Richtlinie in nginx.conf Datei

location ~ /\.git {
  deny all;
}

Das Obige würde Nginx anweisen, 403 wie unten zu werfen, wenn eine Anfrage mit .git vorliegt

Alternativ können Sie 404 zurückgeben, wenn ein Angreifer nicht annehmen soll, dass Sie .git auf dem Server haben.

location ~ /\.git {
  return 404;
}

Und das würde das zurückgeben HTTP-Statuscode als 404 wie unten.

Vergessen Sie nicht, den Nginx neu zu starten, nachdem Sie die Konfiguration geändert haben.

service nginx restart

Apache HTTP

Mal sehen, wie man blockiert .git im Apache-Webserver. Sie können verwenden RedirectMatch or DirectoryMatch um das zu erreichen.

Die Verwendung von RedirectMatch ist wahrscheinlich die einfachste. Sie müssen nur Folgendes hinzufügen httpd.conf  or .htaccess Datei.

RedirectMatch 404 /\.git

Das obige würde 404 werfen, wenn jemand auf .git zugreift, und das Folgende wird 403 zeigen.

RedirectMatch 403 /\.git

Versuchen wir als Nächstes, die DirectoryMatch-Regel zu verwenden, indem Sie Folgendes hinzufügen httpd.conf Datei.

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

Starten Sie den Apache neu und greifen Sie auf die URL zu, einschließlich .git. es wird 403 Verbotener Fehler angezeigt.

Cloudflare

Das ist mein Lieblings. Blockiere die Anfrage am Rande!

Wie Sie sich vorstellen können, funktioniert dies jedoch nur, wenn Ihre Website durch die Website beschleunigt wird Cloudflare Netzwerk.

  • Melden Sie sich bei Cloudflare an
  • Gehen Sie zur Registerkarte Firewall >> Firewall-Regeln >> Erstellen Sie eine Firewall-Regel

  • Geben Sie einen Regelnamen ein - Block GIT
  • Feld auswählen - URI
  • Operator - enthält
  • Wert - .git
  • Wählen Sie eine Aktion - Blockieren und speichern

Die Verbreitung der Regel in allen Cloudflare-Rechenzentren dauert ca. 1 Minute. Sobald dies erledigt ist, erledigt Cloudflare den Rest.

Wenn Sie die zu blockierende Cloudflare-Firewall-Regel implementieren, müssen Sie Folgendes sicherstellen: Herkunft ist nicht ausgesetzt. Andernfalls kann ein Angreifer Cloudflare umgehen um auf .git-Dateien zuzugreifen.

Fazit

Ich hoffe, dass Ihnen das oben Genannte dabei hilft, das Risiko einer Offenlegung des .git-Verzeichnisses zu verringern.

Danke an unsere Sponsoren
Weitere großartige Lektüren zu Apache HTTP
Macht Ihr Geschäft
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder