Lijk uit de kast: apps waren 11 jaar blind voor Mac-malware

Door: Raymon Mens - 3 reacties

Over het algemeen is macOS goed beschermd tegen malware. Een mechanisme genaamd Xprotect beschermt automatisch tegen de meeste vormen van malware. Apple staat standaard ook niet toe dat apps van onbekende makers uitgevoerd worden. Dit heet code signing en werkt met cryptografisch gegenereerde handtekeningen. Door zo’n handtekening kun je ervan uitgaan dat er niet met een app geknoeid is.

Onderzoekers van digitaal beveiligingsbedrijf Okta hebben echter een vreemde bug in deze functie ontdekt. Het mechanisme dat macOS-apps sinds 2007 kunnen gebruiken om digitale handtekeningen te controleren, was makkelijk te omzeilen.

Probleem met malware in universele binaries

Daardoor was het mogelijk om kwaadaardige code in een app te stoppen, deze van een valse cryptografische handtekening te voorzien en naar een nietsvermoedende gebruiker te sturen. De code signing gaf dan aan dat de app bijvoorbeeld door Apple ondertekend was. Dit is een beetje een lijk uit de kast, omdat het om een fout die 11 jaar geleden werd geïntroduceerd ging. Apple stapte toen over naar Intel-chips en kwam met de zogenaamde Fat Binaries. Een bestandsformaat waar zowel apps die met oude PowerPC-chips als moderne Intel-chips werken in gestopt kunnen worden. Later is dit bestandsformaat hergebruikt om 32- en 64-bits versies van apps te bundelen. Toen werden het universele binaries.

Apps die op deze manier verpakt zijn, hebben een Mach-O-bestand dat aangeeft welke platforms precies beschikbaar zijn. Kwaadwillende konden het bestand van een échte Apple-app hergebruiken en naar hun eigen, kwaadaardige code verwijzen. Er verscheen dan geen waarschuwing in externe beveiligingsapps zoals VirusTotal en de Little Snitch Firewall. Iedereen kon zich dus eigenlijk voordoen als Apple.

Lage impact

Dit is een relatief klein probleem, omdat niet iedereen beveiligings-apps gebruikt. Maar gebruikers die op dit soort apps vertrouwen, kwamen van een koude kermis thuis. De oorzaak blijkt een door Apple bijgewerkte API te zijn die door de apps verkeerd aangeroepen werd. Apple had deze verandering nooit gedocumenteerd, maar door dit nieuws zullen ontwikkelaars er ongetwijfeld op gaan letten.

Reacties

3 reacties
  • Profielfoto
    marco.nl

    Aaah gewoon even MacKeeper installeren toch hahaha:P

  • Profielfoto
    whaha

    Dit is best wel kwalijk….

  • Profielfoto
    Alexander Henket

    Waarom lage impact omdat niet iedereen een beveligingsapp heeft? De beveiligingsapps detecteren het nu niet, maar ongeacht of je nu die beveiligingsapps hebt of niet: als je op die manier ongemerkt malware hebt draaien dan heeft dat natuurlijk impact. Hoe groot hangt van de malware af.