A SentinelOne beszámolója szerint a támadók macOS malware telepítésére igyekeznek ily módon rávenni a felhasználókat.
Látszólag megbízható kapcsolat és Zoom link
A támadások egy olyan fertőzési láncot követnek, amely – a közelmúltban gyűjtött információk alapján – a phenjani APT BlueNoroffhoz köthető – adta hírül a SecurityWeek.
A hackerek azzal próbálják megtéveszteni áldozataikat, hogy megbízható kapcsolatként tüntetik fel magukat. Ezután Telegramon keresztül meghívják őket egy találkozóra a népszerű Calendly naptár-platformon keresztül.
Az áldozat ezután egy Zoom-találkozóra mutató linket kap e-mailben, a hackerek pedig arra utasítják, hogy futtasson le egy rosszindulatú szkriptet. Ez látszólag egy Zoom SDK-frissítés.
A szkript végrehajtása azonban egy többlépcsős fertőzési láncot indít el, amely – a SentinelOne által NimDoornak nevezett láncon keresztül – rosszindulatú bináris programok telepítéséhez vezet.
Új technikák, fordított programnyelv
A támadások elemzése újszerű technikákat tárt fel. A hackercsoport például a Nim programozási nyelvet használta a macOS binárisok létrehozásához.
Szintén része a visszaélésnek a wss kihasználása a folyamatok befecskendezéséhez és a távoli kommunikációhoz, valamint speciális jelkezelők használata.
A Nim egy statikusan tipizált, fordított rendszerprogramozási nyelv, amely más programnyelvek, például a Python, az Ada és a Modula fogalmait ötvözi.
A Nim-szakaszok tartalmaznak néhány egyedi funkciót. Ilyen a titkosított konfigurációkezelés, a Nim natív futási idejére épülő aszinkron végrehajtás. Emellett felfedeztek még egy jelalapú, a macOS malware-ekben korábban nem látott perzisztencia-mechanizmust is – derül ki a SentinelOne technikai leírásából.
Két független lánc is indul
Az AppleScripteket is széles körben használták a fertőzési láncban. Ezek mind a kezdeti hozzáférésben, mind a kompromittálódás utáni műveletekben megjelentek.
A Keychain, a böngésző és a Telegram adatszivárgáshoz bash-scripteket alkalmaztak.
A SentinelOne szerint a támadók két Mach-O bináris programot használtak két független végrehajtási lánc elindításához.
Az egyik C++ nyelven íródott, és bash szkriptek végrehajtásához vezet az adatok kiszivárgásához. A másik, a Nim forráskódjából fordított, a perzisztenciát állítja be, és két Nim-kompilált bináris programot dob le. Nevezetesen a “GoogIe LLC”-t (elírást hamisít, vagy a kisbetűs “L”-t nagybetűs “i”-vel helyettesíti) és a “CoreKitAgent”-et.
Függvények futnak a fordítás alatt
A GoogIe LLC célja egy konfigurációs fájl beállítása és a CoreKitAgent végrehajtása. Mindez eseményvezérelt alkalmazásként működik a macOS kqueue mechanizmusát használva.
Ezek együttesen tartós hozzáférési és helyreállítási mechanizmusokat hoznak létre, amelyek a SIGINT és SIGTERM befejező jelek elfogására szolgáló jelkezelőkre támaszkodnak. A magkomponenseket pedig újratelepítik.
A Nim egyedülálló képessége, hogy a fordítási idő alatt függvényeket hajt végre. Ez lehetővé teszi a támadók számára, hogy komplex viselkedést vegyítsenek egy kevésbé nyilvánvaló vezérlési folyamattal rendelkező binárisba. Mindez olyan lefordított binárisokat eredményez, amelyekben a fejlesztői kód és a Nim futásidejű kódja még a függvények szintjén is keveredik.
(Kép: Unsplash/Gabriela Gonzales)