Bestandsmeldings-API's lekken activiteit van gebruikers

Bestandsmeldings-API's lekken activiteit van gebruikers

Onderzoekers van de Technische Universiteit Graz in Oostenrijk hebben aangetoond dat de functies voor meldingen over bestandswijzigingen in Linux, Android, Windows en macOS gebruikt kunnen worden om andere gebruikers van hetzelfde systeem te bespioneren. De informatie die zo vrijkomt, loopt uiteen van iemands typritme tot de websites die hij bezoekt.

Alle vier besturingssystemen laten applicaties vragen om een seintje zodra bestanden worden aangemaakt, gewijzigd of verwijderd. Teksteditors, bestandsbeheerders, synchronisatieprogramma's en antivirussoftware zijn daarvan afhankelijk. Er zijn geen verhoogde rechten voor nodig, alleen leestoegang tot de locatie die in de gaten wordt gehouden.

De aanvallen onthullen nooit wat er in een bestand staat. De onderzoekers ontdekten dat bestandsnamen en de timing van gebeurtenissen genoeg zijn om te reconstrueren wat gebruikers, applicaties en het systeem aan het doen zijn. De meeste scenario's gaan uit van een aanvaller die al code kan uitvoeren op de machine, onder een ander account. Op Android kan die aanvaller een app zijn die om helemaal geen rechten vraagt.

Toetsaanslagen, lettertypen en nepvensters op Linux

Op Linux kan een gebruiker die een beveiligd bestand niet mag volgen, toch de gebeurtenissen ervan binnenkrijgen door de map te volgen waarin het staat, zolang die map leesbaar is. Toen de onderzoekers dit toepasten op de apparaatbestanden die toetsenbordinvoer vertegenwoordigen, konden ze zien wanneer er een toets werd ingedrukt, maar niet welke.

Dat is nog steeds van belang. Ruim twintig jaar onderzoek heeft laten zien dat de tussenpozen tussen toetsaanslagen kunnen helpen verraden wat er wordt getypt. In tests met zeven typisten detecteerde de aanval toetsaanslagen betrouwbaar en scoorde hij tussen 93,1% en 100% op een gangbare maatstaf voor nauwkeurigheid. Invoer die niet op het scherm verschijnt, zoals een verborgen sudo-wachtwoord, wordt niet opgevangen.

Het team wist ook websites te herkennen door bij te houden welke systeemlettertypen Firefox voor een pagina laadt. Daarmee werden sites uit de top 100 met een nauwkeurigheid van 87,9% geïdentificeerd.

Een derde Linux-aanval was gericht op de KDE Plasma 6-desktop onder Wayland. Een kwaadaardig proces dat als het slachtoffer draait, merkt wanneer het echte authenticatievenster op het punt staat te openen en tekent er een nepvenster overheen om de inloggegevens buit te maken.

WhatsApp-activiteit op Android, surfgedrag op Windows

De Android-tests werden uitgevoerd op een Google Pixel en op Samsung Galaxy-telefoons. Een app zonder rechten kon de privéopslagmap van een andere app in de gaten houden. Bij WhatsApp liet dit zien wanneer foto's, video's en documenten werden verstuurd of ontvangen, hoe de bestanden heetten en wanneer ze later werden verwijderd.

Op Windows ontstaat het grootste probleem wanneer een gebruiker de hoofdmap van de systeemschijf volgt. Windows meldt dan het volledige pad van elk gewijzigd bestand op de machine, inclusief bestanden in de persoonlijke mappen van andere gebruikers die het volgende account niet kan openen.

Firefox slaat gegevens voor veel websites op in mappen die naar de betreffende site zijn vernoemd. Een gebruiker zonder speciale rechten kan dus in realtime zien welke sites een andere gebruiker bezoekt. Over de top 1.000 websites kwam de nauwkeurigheid uit op 97,8% voor Firefox en 48,5% voor Edge, dat voor veel minder sites mappen aanmaakt.

macOS lekte het minst, omdat alleen bestanden die voor iedereen leesbaar zijn gevolgd kunnen worden. Toch konden de onderzoekers bijhouden wanneer apps werden gestart, hoe er met apps werd gewerkt en welke instellingen werden gewijzigd.

Weinig oplossingen, en een antwoord dat het 'zo bedoeld' is

De Linux-kernel is deels aangescherpt, zodat apparaatbestanden geen access- en modify-gebeurtenissen meer genereren. Volgens de onderzoekers pakt dit de ernstigste problemen aan. De oplossing wordt bijgehouden als CVE-2025-68788. Voor Android en macOS zijn geen oplossingen vermeld.

Microsoft liet de onderzoekers weten dat het gedrag van Windows zo bedoeld is en alleen bestandsnamen en paden in het profiel van een andere gebruiker blootgeeft, geen inhoud of gevoelige gegevens. In een verklaring aan SecurityWeek zei een woordvoerder dat het bedrijf had vastgesteld "dat dit geen beveiligingslek is", en wees erop dat de techniek "vereist dat een aanvaller al in staat is om lokaal code uit te voeren op een apparaat onder een ander gebruikersaccount." Microsoft verwees ook naar beschermingsmaatregelen die het in april 2025 heeft gedocumenteerd voor een aantal scenario's waarin bestandspaden uitlekken via meldingen over mapwijzigingen, en die beheerders kunnen inschakelen.

Apple en Google reageerden niet op het verzoek om commentaar van SecurityWeek. De onderzoekers zeggen niet te weten van misbruik in het wild, maar proof-of-concept-code is op GitHub gepubliceerd.

Onze analyse

Het onderzoek herinnert eraan dat metadata net zoveel kan verraden als inhoud. Geen van deze aanvallen leest ook maar één bestand, en toch leiden ze typpatronen, surfgewoonten en berichtenactiviteit af.

De bevindingen over Android zijn waarschijnlijk het meest relevant voor gewone gebruikers. De aanvaller is daar gewoon een app zonder rechten, een lagere drempel dan de scenario's met meerdere gebruikers op desktops. Gezien hoe vaak kwaadaardige Android-apps op echte telefoons belanden, is het de moeite waard om te volgen of Google reageert en de toegang tot de opslagmappen van andere apps beperkt.

Het standpunt van Microsoft dat het 'zo bedoeld' is, past bij de opvatting van het bedrijf dat lokale code-uitvoering al een inbreuk op het vertrouwen is. Voor gedeelde machines, terminalservers en omgevingen met meerdere gebruikers kunnen beheerders toch overwegen om naar de optionele beschermingsmaatregelen te kijken die Microsoft heeft gedocumenteerd. Nu er openbare proof-of-concept-code beschikbaar is, kan de afstand tussen onderzoek en misbruik kleiner worden.