- Ny variant av XCSSET med avancerad obfuskering och multipel persistens (zshrc, Dock och LaunchDaemon).
- Utökar datastöld till Firefox och lägger till clipper för att avleda kryptotransaktioner från Urklipp.
- Infektion av delade Xcode-projekt: Endast körbara AppleScripts, omdöpta moduler och C2-exfiltrering.
- Rekommendationer: Uppdatera macOS, granska projekt innan du bygger och övervaka osascript/dockutil.
Familjen till malware XCSSET för macOS har återvänt med en förbättrad variant, och det är ingen liten bedrift: Microsoft Threat Intelligence har identifierat betydande förändringar i tekniker för obfuskation, persistens och datastöld. som höjer ribban för denna gamla bekantskap. Om du arbetar med Xcode eller delar projekt mellan team vill du hålla dig uppdaterad om vad som händer.
Sedan upptäckten 2020 har XCSSET anpassat sig till förändringar i Apples ekosystem. Det som nu observeras är den första offentligt dokumenterade nya varianten sedan 2022., upptäckt i begränsade attacker men med utökade möjligheter. Detta är en modulär skadlig kod som smyger sig in i Xcode-projekt för att köra sin nyttolast när de kompileras, och i den här versionen använder den mer listiga taktiker för att kamouflera sig själv och bestå.
Vad är XCSSET och varför sprids det så bra?
I huvudsak är XCSSET en uppsättning skadliga moduler utformade för att infektera Xcode-projekt och aktivera deras funktioner under byggetDen mest troliga spridningsvektorn är delning av projektfiler mellan samarbetande utvecklare. appar för macOS, vilket multiplicerar körningsmöjligheterna i varje build.
Denna skadliga programvara har historiskt sett kunnat utnyttja nolldagssårbarheter, injicera kod i projekt och till och med introducera bakdörrar i komponenter i Apples ekosystem, som SafariUnder hela sin utveckling har den också lagt till kompatibilitet med nyare versioner av macOS och Apple Silicon (M1)-arkitekturer, vilket visar på en anmärkningsvärd anpassningsförmåga.
På marken fungerar XCSSET som informationstjuv och kryptovalutakan samla in data från populära program (Evernote, Notes, Skype, Telegram, QQ, WeChat och mer), exfiltrera system- och applikationsfiler och rikta in sig specifikt mot digitala plånböcker. Dessutom har vissa varianter visat sig Obehöriga skärmdumpar, filkryptering och utplacering av lösensumman.
Vad som är nytt i den senaste varianten
Microsoft har detaljerat att den senaste varianten innehåller Nya metoder för obfuskation, persistens och infektionsstrategierVi pratar inte längre bara om namnbyte eller kodkomprimering: det finns nu mer slumpmässighet i hur den genererar sina nyttolaster för att kontaminera Xcode-projekt.
En slående förändring är den kombinerade användningen av kodningstekniker. Medan tidigare iterationer enbart förlitade sig på xxd (hexdump), Den nya versionen lägger till Base64 och tillämpar ett slumpmässigt antal iterationer., vilket gör det svårare att identifiera och nysta upp lasten.
Modulernas interna namn är också mer dolda än någonsin: De är obfuskerade på kodnivå för att dölja sitt syfteDetta komplicerar statisk analys och korrelationen mellan funktioner och observerbara effekter i systemet.
Persistens: metoderna ”zshrc” och ”dock”
Ett av kännetecknen för denna återkomst av XCSSET är två väldigt olika vägar att överleva efter infektion. Metoden ”zshrc” utnyttjar skalkonfigurationen för att köras automatiskt i varje session., och ”dockningsmetoden” manipulerar systemgenvägar för att exekvera den skadliga nyttolasten transparent för användaren.
I "zshrc"-metoden skapar skadlig programvara en fil som heter ~/.zshrc_aliases med nyttolasten och lägger sedan till ett kommando till ~/.zshrc som säkerställer att filen laddas varje gång en ny session öppnas. Detta säkerställer att filen är persistent i alla terminaler utan att det väcker några uppenbara misstankar.
"Dockningsplanen" innebär att man laddar ner ett signerat verktyg från kommando- och kontrollservern, dockutil, för att hantera Dock-elementDen skapar sedan en falsk Launchpad-app och ersätter sökvägen till den legitima Launchpad i Dock med den falska appen. Resultat: varje gång användaren startar Launchpad från Dock öppnas den riktiga appen och, parallellt, den skadliga nyttolasten aktiveras.
Som en förstärkning introducerar varianten Nya kriterier för att bestämma var i Xcode-projektet nyttolasten ska infogasDetta optimerar effekten och minimerar risken för att utvecklaren upptäcker något ovanligt när de granskar projektträdet.
AppleScript, smygkörning och infektionskedja
Microsofts forskning beskriver att XCSSET använder AppleScripts kompilerade i körläge att köras tyst och förhindra att direkt analys avslöjar dess innehåll. Denna teknik passar in i dess mål att vara osynlig och undvika verktyg för skriptinspektion.
I den fjärde fasen av infektionskedjan observeras det att Ett AppleScript-program kör ett shell-kommando för att ladda ner det sista stegetDetta slutliga AppleScript samlar in information från det komprometterade systemet och startar upp undermoduler genom att anropa funktionen boot(), vilket orkestrerar den modulära distributionen av funktioner.
Logiska förändringar har också upptäckts: Ytterligare kontroller för webbläsaren Firefox och en annan metod för att bekräfta närvaron av meddelandeappen Telegram. Dessa är inte små detaljer; de indikerar en tydlig avsikt att göra datainsamlingen mer tillförlitlig och utöka dess omfattning.
Omdöpta moduler och nya delar
Med varje revision ändrade XCSSET-familjen namnen på sina moduler något, en klassisk katt-och-råtta-lek för att göra det svårt att spåra versioner och signaturerTrots detta förblir dess funktionalitet i allmänhet konsekvent.
Bland de markerade modulerna i denna variant visas identifierare som vexyeqj (tidigare seizecj), vilket ladda ner en annan modul som heter bnk och kör den med osascript. Detta skript lägger till datavalidering, kryptering, dekryptering, hämtning av ytterligare innehåll från C2 och händelseloggningsfunktioner, och inkluderar "clipper"-komponenten.
Det nämns också neq_cdyd_ilvcmwx, liknande txzx_vostfdi, som ansvarar för exfiltrera filer till kommando- och kontrollservernmodulen xmyyeqjx som förbereder LaunchDaemon-baserad persistens; Jey (tidigare jez) som konfigurerar en uthållighet via GitOch iewmilh_cdyd, ansvarig för att stjäla data från Firefox med hjälp av en modifierad version av det offentliga verktyget HackBrowserData.
- vexyeqjinformationsmodul; ladda ner och använd BNK, integrerar klippare och kryptering.
- neq_cdyd_ilvcmwx: exfiltrering av filer till C2.
- xmyyeqjx: uthållighet av LaunchDaemon.
- Jey: uthållighet genom Git.
- iewmilh_cdydFirefox-datastöld med modifierad HackBrowserData.
Fokuset på Firefox är särskilt relevant, eftersom utökar räckvidden bortom Chromium och SafariDet här innebär att antalet potentiella offer ökar, och tekniker för utvinning av autentiseringsuppgifter och cookies förfinas för flera webbläsarmotorer.
Kryptovalutastöld med hjälp av kapning av urklipp
En av de funktioner som är mest angelägna i denna utveckling är "klippmodulen". Övervakar urklippet för reguljära uttryck som matchar kryptovalutaadresser (olika plånboksformat). Så snart den upptäcker en matchning ersätter den omedelbart adressen med en som kontrolleras av angriparen.
Denna attack kräver inte förhöjda rättigheter för att orsaka kaos: Offret kopierar sin adress från sin plånbok, klistrar in den för att skicka pengar och överför den omedvetet till angriparen.Som Microsoft-teamet påpekade, urholkar detta förtroendet för något så grundläggande som att kopiera och klistra in.
Kombinationen av clipper och stöld av webbläsardata gör XCSSET till en Ett praktiskt hot mot cyberbrottslingar med fokus på kryptotillgångarDe kan hämta sessionscookies, sparade lösenord och till och med omdirigera transaktioner utan att röra offrets synliga saldo förrän det är för sent.
Andra taktiker för uthållighet och kamouflage
Utöver ”zshrc” och ”dock” beskriver Microsoft att den här varianten lägger till LaunchDaemon-poster som kör en nyttolast i ~/.rootDenna mekanism säkerställer en tidig och stabil uppstart och kamouflerar sig bland virvaret av systemtjänster som laddas i bakgrunden.
Skapandet av en har också observerats Förfalskad systeminställningar.app i /tmp, vilket gör att skadlig kod kan dölja sin aktivitet under täckmantel av en legitim systemapp. Denna typ av imitation hjälper till att undvika misstankar vid inspektion av processer eller sökvägar under slumpmässig exekvering.
Parallellt är XCSSETs förvirringsarbete tillbaka i rampljuset: Mer sofistikerad kryptering, slumpmässiga modulnamn och AppleScripts som endast körsAllt pekar på att kampanjens livslängd förlängs innan den neutraliseras av signaturer och detekteringsregler.
Historiska funktioner: bortom webbläsaren
När jag ser tillbaka har XCSSET inte bara begränsats till att tömma webbläsare. Dess förmåga att extrahera data från appar som Google Chrome, Opera, Telegram, Evernote, Skype, WeChat och Apples egna applikationer som t.ex. Kontakter och anteckningarDet vill säga en rad källor som inkluderar meddelanden, produktivitet och personuppgifter.
År 2021 beskrev rapporter som Jamfs hur XCSSET utnyttjade CVE-2021-30713, en kringgående TCC-ramverk, att dricka skärmdumpar på skrivbordet utan att be om tillstånd. Denna färdighet passar in i ett tydligt mål: spionera på och samla in känsligt material med minimal friktion för användaren.
Med tiden anpassades skadlig programvara till macOS Monterey-kompatibilitet och med M1-chipsen, något som understryker dess kontinuitet och underhåll av angriparnaÄn idag är operationens exakta ursprung oklart.
Hur det smyger sig in i Xcode-projekt
Distributionen av XCSSET är inte detaljerad på millimetern, men allt tyder på det. Dra nytta av Xcode-projektdelning mellan utvecklareOm ett arkiv eller paket redan är komprometterat aktiverar alla efterföljande versioner den skadliga koden.
Detta mönster förvandlar utvecklingsteam till privilegierade förökningsvektorer, särskilt i miljöer med slappa metoder för beroendekontroll, byggskript eller delade mallar. Det är en påminnelse om att mjukvaruleveranskedja har blivit ett återkommande mål.
Med tanke på detta scenario är det rimligt att den nya varianten förstärker logiken för att bestämma var nyttolaster ska infogas i projektetJu mer "naturlig" din plats verkar, desto mindre sannolikt är det att en utvecklare upptäcker den i en snabbsökning.
Attackergonomi: fel, stadier och tecken
Microsoft hade redan aviserat förbättringar av XCSSET tidigare i år. felhantering och uthållighetDet viktiga är att det nu passar in i en stegvis infektionskedja: ett AppleScript som startar ett shell-kommando, vilket laddar ner ytterligare ett sista AppleScript, vilket i sin tur samlar in systeminformation och startar undermoduler.
Om du letar efter tecken, förekomsten av ~/.zshrc_aliases, manipulationer i ~/.zshrc, misstänkta poster i LaunchDaemons eller en konstig System Settings.app i /tmp Det här är indikatorer att hålla utkik efter. All avvikande aktivitet i Dock (t.ex. utbytta sökvägar i Launchpad) bör också utlösa larm.
I hanterade miljöer bör SOC:er kalibrera regler som strävar efter Ovanligt osascript, upprepade anrop till dockutil och Base64-kodade eller krypterade artefakter kopplade till Xcode-byggprocesser och använda verktyg för att visa körande processer på macOSSammanställningens sammanhang är nyckeln till att minska falska positiva resultat.
Vem riktar XCSSET sig till?
Det naturliga fokuset är de som utvecklar eller kompilerar med Xcode, men effekten kan även omfatta användare som installera inbyggda appar från kontaminerade projekt. Den ekonomiska delen visas i kapning av urklipp, särskilt relevant för dem som regelbundet hanterar kryptovalutor.
Inom datasfären, den exfiltrering från Firefox och andra appar riskerar inloggningsuppgifter, sessionscookies och personliga anteckningar. Lägg till detta de äldre funktionerna hos skärmdumpar, filkryptering och lösensumman, bilden är mer än komplett.
De attacker som hittills upptäckts verkar begränsad omfattning, men som ofta är fallet kan det ta tid innan kampanjens verkliga omfattning framträder. Modularitet underlättar snabba iterationer, namnbyten och finjustering för att undvika upptäckt.
Praktiska rekommendationer för att minska risken
Först, uppdatera disciplinen: Håll macOS och appar uppdaterade och överväga lösningar för att skydda mot skadlig kodXCSSET har redan utnyttjat sårbarheter, inklusive nolldagssårbarheter, så en uppgradering till den senaste versionen minskar attackytan avsevärt.
För det andra, granska Xcode-projekt som du laddar ner eller klonar från repositories, och var extremt försiktig med vad du kompilerar. Granska byggskript, Kör skriptfaser, beroenden och alla filer som körs i byggprocessen.
För det tredje, var försiktig med urklippet. Undvik att kopiera/klistra in overifierade plånboksadresserDubbelkolla det första och sista tecknet innan du bekräftar transaktioner. Det är en liten gest som kan bespara dig mycket besvär.
Fjärde, telemetri och jakt. Övervakar osascript, dockutil, ändringar i ~/.zshrc och LaunchDaemonsOm du hanterar flottor, införliva EDR-regler som upptäcker ovanliga kompilerade AppleScript-skript eller upprepade kodade uppladdningar i byggprocesser.
Passionerad författare om bytesvärlden och tekniken i allmänhet. Jag älskar att dela med mig av min kunskap genom att skriva, och det är vad jag kommer att göra i den här bloggen, visa dig alla de mest intressanta sakerna om prylar, mjukvara, hårdvara, tekniska trender och mer. Mitt mål är att hjälpa dig att navigera i den digitala världen på ett enkelt och underhållande sätt.