Wat is het risico van .DS_Store?
Het .DS_Store bestand wordt door MacOS automatisch aangemaakt wanneer een gebruiker een folder opent met Finder, de standaard file manager van MacOS. Het bestand bevat informatie over welke bestanden in de map staan en bevat opties zoals hoe icoontjes eruit zien.
Het bestand is niet schadelijk, maar bevat informatie. Zie het als de inhoudsopgave van een map. Er zijn echter situaties waarin de aanwezigheid van zo’n inhoudsopgave problematisch wordt (of een kans, afhankelijk aan welke kant iemand staat).
.DS_Store is niet up-to-date
Er zijn grofweg twee scenario’s waarbij een .DS_Store problemen op kan leveren. Het eerste probleem is dat de .DS_Store alleen wordt geüpdatet door Finder. Stel er wordt een bestand aangemaakt “secret-plan-to-overthrow-the-government.docx”. Dit bestand wordt opgeslagen op een USB stick. Vervolgens wordt er met een Windows computer het document verwijderd. In dat geval zal de .DS_Store niet geüpdatet worden, maar als in het bestand wordt gekeken dan is wel te zien dat dit bestand aanwezig was. De inhoud staat weliswaar niet in het bestand, maar de naam van het verwijderde bestand wel. Wordt de USB stick gevonden dan kan er geprobeerd worden om het bestand terug te halen met een data recovery tool.
.DS_Store staat op een webserver
Een ander probleem kan ontstaan als een map vanaf een Apple computer geüpload wordt naar een website. Normaal kan een bezoeker niet zien wat er in die map staat. Als de website www.example.com/ bezocht wordt dan is het niet te zien welke bestanden op die website staan, alleen de index file. Uiteraard is het een slecht idee om bestanden met gevoelige data in de webroot op te slaan. Dergelijke bestanden horen op een goede manier afgeschermd te worden, bij voorkeur buiten de webroot. Maar stel er is een back-up van de database in een map met de naam “backup-01-05-2021-awesome-project.sql”. Goede kans dat nooit iemand die back-up gaat vinden vanwege de lange naam. Dat wordt een ander verhaal wanneer dit bestand ook in de .DS_Store vermeld staat. Deze is dan eenvoudig uit te lezen en is er een risico op een datalek.
Wat staat er in een .DS_Store bestand?
Het .DS_Store bevat binary data, wat betekent dat het bestand niet gelezen kan worden met een standaard tekst editor. intelx.io heeft online een handige tool die dergelijke bestanden kan uitlezen. Het .DS_Store bestand bevat de inhoud van een map, inclusief die gebruikte icoontjes.
Wat doen om een datalek door een gelekt .DS_Store bestand te voorkomen?
Problemen met het .DS_Store bestand ontstaan wanneer er bestanden vanaf een Mac naar een computer met een ander besturingssysteem verplaatst worden. Het meest eenvoudige is natuurlijk om het .DS_Store bestand te verwijderen. Ben je een software-ontwikkelaar en maak je gebruik van Git? Dan is het verstandig om het .DS_Store bestand aan het .gitignore bestand toe te voegen. Website beheerders kunnen in de .htaccess een regel toevoegen waarin toegang tot dit bestand wordt geblokkeerd.