Αποτρέψτε την πρόσβαση του κοινού στο .git

Διαχείριση εκδόσεων Το Git είναι πλέον στάνταρ σε σχεδόν κάθε έργο Ιστού και σε κάθε περιβάλλον (συμπεριλαμβανομένης της παραγωγής). Το Git δημιουργεί πάντα τον υποφάκελο .git και εάν αυτό βρίσκεται στο επίπεδο του δημόσιου φακέλου του ιστότοπου, μπορείτε να έχετε δημόσια πρόσβαση σε ευαίσθητα αρχεία (για παράδειγμα, το call /.git/logs/HEAD δείχνει τις τελευταίες δεσμεύσεις) . Αυτό εξηγεί λεπτομερώς πώς μπορείτε να κλωνοποιήσουν ένα τρίτο (!) Git repository χωρίς λίστα ένα κατάλογο.


Για να αποφευχθεί αυτό, στην περίπτωση διακομιστή Apache , η πρόσβαση σε ολόκληρο το φάκελο .git περιορίζεται στο αρχείο .htaccess και εκδίδεται σφάλμα 404. Ο εισβολέας δεν γνωρίζει ότι υπάρχει και ο φάκελος:

32b39d7c9836a649597019300a5c2115

Εάν εκτελείτε διακομιστή NGINX , αυτοί οι κανόνες το κάνουν:

32b39d7c9836a649597019300a5c2115

Πίσω