Inleiding
macOS staat bekend om zijn strenge ondertekeningsmechanismen en de zogenoemde “Gatekeeper”. Toch tonen recente incidenten aan dat kwaadwillenden nog steeds in staat zijn om vertrouwde applicaties stilletjes te vervangen. Deze subtiele aanvalsvector ondermijnt de basisassumptie dat een geïnstalleerde app ongewijzigd blijft zolang de ondertekening geldig is.
De impact is groot: gebruikers merken vaak pas iets op wanneer een functie onverwacht faalt of wanneer ongewenste netwerkverkeer ontstaat. Voor beheerders betekent dit dat traditionele detectiemethoden – die vooral zoeken naar onbekende binaries – hier tekortschieten.
Dit artikel verkent de technische details van de aanval, de gebruikte macOS‑mechanismen, en biedt concrete mitigaties voor zowel eindgebruikers als IT‑beheerders.
Werking van de stille vervanging
De kern van de aanval berust op het manipuleren van de “App Sandbox”‑grenzen en het misbruiken van de “App Translocation”‑feature. Een aanvaller plaatst een gemodificeerde binary in een map die door macOS wordt beschouwd als een vertrouwde locatie (bijvoorbeeld /Applications), maar zonder dat de gebruiker een waarschuwingsdialoog ziet.
Door de ondertekening van de originele binary te kopiëren naar de gemodificeerde versie, blijft de handtekening technisch gezien geldig. macOS controleert alleen de cryptografische handtekening, niet de hash van de inhoud. Hierdoor kan een aangepaste binary die exact dezelfde certificaatinformatie bevat, onopgemerkt blijven.
Een bijkomend element is het gebruik van “launchd”‑plists die automatisch opnieuw starten. Nadat de originele binary is overschreven, zorgt de launch‑daemon ervoor dat de gemodificeerde versie direct wordt uitgevoerd bij de volgende login, waardoor de aanval vrijwel onzichtbaar blijft.
Praktische voorbeelden
In een recent onderzoek werd een populaire foto‑editor aangevallen. De aanvaller verving Photoshop.app/Contents/MacOS/Photoshop door een binary die een achterdeur bevatte. De ondertekening werd gekopieerd van de originele binary, waardoor Gatekeeper de wijziging niet blokkeerde.
Een ander voorbeeld betrof een ontwikkel‑toolchain. Door de xcodebuild‑binary te vervangen, konden aanvallers elke gecompileerde applicatie ondertekenen met een eigen certificaat, waardoor later laterale bewegingen binnen een organisatie mogelijk werden.
Beide gevallen lieten zien dat de vervanging binnen enkele seconden kan plaatsvinden, vaak via een geprivilegieerde script dat via een phishing‑e‑mail werd uitgevoerd.
Detectie en mitigatie
Traditionele antivirus‑oplossingen detecteren deze aanvallen niet omdat de ondertekening nog steeds geldig is. Een effectievere aanpak bestaat uit het monitoren van bestands‑integriteit met behulp van tools zoals fswatch of Tripwire. Deze tools kunnen een waarschuwing geven wanneer een binary in een applicatie‑bundle onverwacht wijzigt.
Daarnaast is het aan te raden om de macOS‑functie “System Integrity Protection” (SIP) strikt in te schakelen. SIP voorkomt dat zelfs een gebruiker met admin‑rechten kritieke systeembestanden kan overschrijven, inclusief applicatie‑bundles in /Applications.
Voor organisaties is het verstandig om een centraal beheerder‑certificaat te gebruiken en alleen ondertekende binaries toe te staan via MDM‑profielen. Hiermee kan men een whitelist opstellen en elke wijziging buiten de whitelist blokkeren.
Toekomstperspectief
Apple heeft al gereageerd met een update die de hash‑verificatie van binaries binnen een bundle verbetert. Toch blijft de onderliggende kwetsbaarheid van het kopiëren van ondertekenings‑metadata bestaan. Het is cruciaal dat ontwikkelaars en beveiligingsprofessionals blijven investeren in aanvullende integriteitscontroles.
Een mogelijke evolutie is de introductie van een “binary attestation”‑mechanisme dat zowel handtekening als inhouds‑hash verifieert voordat een applicatie wordt gelanceerd. Zo’n aanpak zou de aanvalsvector volledig neutraliseren.
Tot slot blijft educatie van eindgebruikers essentieel: verdachte e‑mails, onverwachte prompts en ongebruikelijke prestaties moeten onmiddellijk gemeld worden. Alleen door een combinatie van technische maatregelen en bewustwording kunnen we de stille vervanging van macOS‑executables effectief bestrijden.