Eine .DS_Store-Datei ist öffentlich erreichbar

Worum es geht

Auf Ihrer Website ist eine Datei .DS_Store öffentlich erreichbar. Der Finder unter macOS legt sie an und speichert darin die Liste der Einträge eines Ordners. Auf den Server gelangt sie versehentlich, wenn ein Ordner per FTP, rsync oder als Archiv hochgeladen wird. Wir prüfen, dass die Antwort den Aufbau einer echten .DS_Store hat, nicht nur ein HTTP 200.

Warum das ein Problem ist

Die Datei selbst stiehlt nichts. Sie verrät aber die Namen von Dateien und Ordnern, die nirgends verlinkt sind und niemand sehen sollte:

Das ist ein Befund mit geringem Schweregrad. Er zeigt aber, dass auch Dinge auf den Server gelangen, die dort nicht hingehören.

Wie Sie es beheben

Dateien auf dem Server löschen

find /var/www -name .DS_Store -delete

Verhindern, dass sie zurückkommen

Tragen Sie sie in die .gitignore ein und schließen Sie sie beim Hochladen aus:

.DS_Store
rsync -av --exclude=.DS_Store ./ server:/var/www/site/

Punktdateien am Server sperren

nginx (lässt nur .well-known durch):

location ~ /\.(?!well-known) {
    deny all;
}

Apache:

<FilesMatch "^\.DS_Store$">
    Require all denied
</FilesMatch>

Prüfen Sie auch, was die Datei aufgelistet hat. Liegt dort ein Backup oder Export, vergewissern Sie sich, dass er nicht ebenfalls öffentlich ist.

Referenzen