Jamf Threat Labs har upptäckt en ny avancerad skadlig kod för macOS som fått namnet CrashStealer. Den utger sig för att vara Apples egen kraschrapporterare, men har i själva verket ett enda syfte: att stjäla känslig information från offrets Mac.
Till skillnad från många tidigare informationsstöldprogram för macOS är CrashStealer skriven i C++, vilket gör den både snabbare och svårare att analysera. Den riktar in sig på webbläsare, lösenordshanterare, kryptoplånböcker och macOS Nyckelring (Keychain), där många användares sparade lösenord finns lagrade.
Låtsas vara ett legitimt installationsprogram
Attacken börjar med en diskavbild som kallas Werkbit Setup. Installationsprogrammet är både digitalt signerat och notariserat av Apple, vilket innebär att Gatekeeper inte varnar användaren när programmet öppnas.
När användaren startar programmet hämtas den riktiga skadliga koden från angriparnas servrar. Den installeras i bakgrunden och maskerar sig sedan som Apples egen komponent CrashReporter.
Det gör att den ser legitim ut både för användaren och i delar av macOS.
Ber användaren om lösenordet
När CrashStealer körs visas ett lösenordsfönster som är utformat för att efterlikna macOS egna säkerhetsdialoger.
Det angivna lösenordet kontrolleras lokalt. Om det är fel visas dialogrutan igen tills användaren skriver rätt lösenord.
När lösenordet verifierats låser skadeprogrammet upp användarens Nyckelring och får därmed tillgång till sparade lösenord och andra känsliga uppgifter.
Samlar in stora mängder information
CrashStealer söker efter data från ett stort antal program och tjänster.
Bland annat riktar den in sig på:
- Google Chrome, Safari, Brave, Microsoft Edge, Opera och Firefox
- över 80 kryptoplånböcker, däribland MetaMask, Phantom, Coinbase Wallet, Trust Wallet och Exodus
- lösenordshanterare som 1Password, Bitwarden, LastPass, Dashlane, Keeper och NordPass
- filer i Dokument, Hämtade filer och andra användarmappar
- innehållet i macOS Nyckelring
Dessutom undersöker skadeprogrammet vilka säkerhetsprogram som finns installerade på datorn, sannolikt för att kartlägga hur väl skyddat systemet är.
Krypterar den stulna informationen
Innan informationen skickas till angriparna krypteras allt med AES-256-GCM, en modern krypteringsstandard som även används i många legitima säkerhetslösningar.
Det innebär att även om säkerhetsforskare hittar de filer som CrashStealer lämnar efter sig går innehållet inte att läsa utan rätt krypteringsnyckel.
Den stulna informationen paketeras därefter och skickas vidare till angriparnas kontrollserver.
Installerar sig permanent
CrashStealer nöjer sig inte med att köra en gång.
Efter installationen kopierar den sig själv till användarens bibliotek, signerar om programmet och skapar en LaunchAgent som gör att skadeprogrammet startar automatiskt varje gång användaren loggar in.
Den använder dessutom Apples egna namnkonventioner för att smälta in bland systemets legitima processer.
Svår att analysera
Jamf beskriver CrashStealer som betydligt mer genomarbetad än många andra Mac-hot.
Koden innehåller flera lager av skydd mot analys, bland annat krypterade textsträngar, avancerad kodobfuskering och mekanismer som upptäcker om programmet körs under felsökning.
Forskarna menar att skadeprogrammet ser ut att ha utvecklats under våren och nu har börjat användas i verkliga attacker.
Apple har informerats
Jamf Threat Labs har rapporterat utvecklarcertifikatet som användes för att distribuera installationsprogrammet till Apple.