Singularity rootkit läbib Elastic Defendi kaitse: riskid Linuxile

- Singularity rootkit suudab mööda minna Elastic Defendi eBPF-põhise moodulite laadimise tuvastamise.
- Rünnak kasutab Elasticu usaldatud protsesside nimekirja, et vältida telemeetria genereerimist.
- Tuvastamise vältimiseks kasutatakse sümbolite randomiseerimist, fragmenteerimist ja XOR-kodeerimist.
- Uuring rõhutab eBPF-põhiste turvatööriistade haavatavust kernelitasandi ähduste ees.
Linuxi operatsioonisüsteemi turvalisuse maastikul on toimunud märkimisväärne nihkus eBPF-tehnoloogia suunas, mis võimaldab süsteemihaldajatele ja turvatööriistadele sügavat nähtavust tuuma sisse ilma jõudlust oluliselt ohustamata. Kuid uus turiuuringutaja 0xMatheuZ on demonstreerinud, et isegi kaasaegsed EDR-lahendused, nagu Elastic Defend, ei ole immuunsed nutikate läbikäimiste vastu. Singularity rootkit on loodud just selleks, et näidata, kuidas kernelitasandi ähdused saavad pimdada vaatlusvahendid, mida ettevõtted usaldavad oma infrastruktuuri kaitseks.
Kuidas Singularity rootkit Elasticu kaitset mööb
Elastic Defend on alates versioonist 8.14 kasutanud BPF-põhist sündmuste jälgimist, et tuvastada Linuxi tuuma moodulite laadimist. Versiooniga 9.5 lisati süsteemi taint_flags väli, mis võimaldab tuvastada allkirjamatuid või väliselt ehitatud mooduleid, mis võivad tuuma stabiilsust ja turvalisust ohustada. Tavaliselt genereerib Singularity rootkiti unmodified loadimine Ubuntu 6.8 tuumaga keskkonnas tervelt 76 hoiatust, millest suurema osa põhjustavad YARA-reeglid ja runtime BPF-jälgimine.
Kriitiline nõrkust on aga Elasticu lähenemine usaldatud protsessidele. Elasticu sisemine module_load eBPF-programm kontrollib enne telemeetria kogumist, kas praegune protsessi ID (PID) asub usaldatud protsesside kaardis (map). Kui protsess on klassifitseeritud kui usaldatud, lõpetab BPF-programm oma töö varakult. See tähendab, et endpoint-sündmust ei looda ja taint-flagi tuvastamisreegel ei saa vajalikku infot, et märkida tuuma saastumist.
Singularity rootkiti laadija ei tugene fikseeritud identifikaatoritele, kuna kaartide ID-d võivad Elasticu agendi taaskäivitamisel muutuda. Selle asemel tuvastab laadija dünaamiliselt sobiva BPF-kaardi, mis võimaldab talle end ajutiselt usaldatud protsessina registreerida ja nähtamatuks muutuda.
Sümbolite randomiseerimine ja YARA-reeglite vältimine
Pelgalt telemeetria blokeerimine ei ole piisav, kuna Elastic Security kasutab mitmeid kihte, sealhulgas YARA-signatuure, mis skaneerivad .ko faile kettal. 0xMatheuZ tuvastas mitmeid konkreetseid reegleid, nagu Linux_Rootkit_Generic, mis otsivad tüüpilisi rootkitide mustreid ja funktsiooninimesi.
Sellega võitlemiseks kasutab Singularity rootkit sümbolite nimede randomiseerimist. Selle asemel, et kasutada standardseid funktsioone, mis oleksid signatuuri põhjal kohe tuvastatavad, genereerib rootkit intelligentse randomiseerimise abil uued nimed. See muudab statilise analüüsi peaaegu võimatuks, kuna rünnaku kood ei vasta enam tuntud mustritele.
Fragmenteerimine ja XOR-kodeerimine mälus
Teine strateegia, mida Singularity rakendab, on mooduli fragmenteerimine. Selle asemel, et kirjutada terviklik ja tuvastatav kernel-objekt kettale, jagatakse kood väiksemateteks tükideks, mis on XOR-kodeeritud. See meetod väldib failisüsteemi skaneerimist, kuna kood ei ole kettal loetavas vormis.
Laadimine toimub mälus, kasutades memfd_create süsteemikutsut. See võimaldab luua anonüümse faili mälus, millega fanotify-laadsed jälgijad ei saa seostada konkreetse failiteega. See tähendab, et rootkit ei jõua kunagi traditsioonilise failisüsteemi skaneerimise alla, liikudes otse mälust tuuma sisse.
Ftrace raamistiku obfuskatsioon
Rootkitide toimimiseks on sageli vaja hookida tuuma funktsioone, milleks kasutatakse sageli Ftrace raamistikku. Kuid ka Ftrace'i abi-funktsioonide kasutamine võib olla signatuurite jaoks punane lipp. Singularity lahendus on lihtne kuid tõhus: ta nimetab Ftrace'i raamistiku funktsioone ümber, et vältida käitumisanalüüsi poolt tuvastamist.
Singularity rootkit ei piirdu vaid vältimisega, vaid ründab otse EDR-i seisu, kasutades BPF-kaartide mürstitamist, et pimdada vaatlusvahendid sesasest, kus nad peaksid töötama.
Sellega on loodud terviklik pipeline, kus automatiseeritud obfuskatsioonivõrgustik valmistab ette rootkiti, mis on resistentne nii statilisele (YARA) kui ka dünaamilisele (eBPF) analüüsile. Täpsemat tehnilist ülevaadet nende meetodite kohta leiab GBHackersi analüüsist.
Kuidas kaitsta Linuxi serverite infrastruktuuri
Selle rünnaku analüüs näitab, et usaldus on turvalisuse kõige nõrgem punkt. Kui EDR-lahendus usaldab teatud protsesse tingimustult, loob see rünnaja jaoks ideaalse tee sisse. Et vältida sarnaseid läbikäimisi, peaks ettevõtted kaaluma järgmisi meetmeid:
Kõigepealt on oluline piirata õigusi, millega eBPF-kaartidele saab ligi. Kui süsteem ei rakenda ranget security_bpf_map kontrolli, on võimalik, et rünnaja suudab monitoringu olekut otse ümberkirjutada. Teiseks tuleks jälgida ebatavaliselt kõrget memfd_create kutsete sagedust, mis võib vihjata mälus laaditavatele moodulitele.
Lõpuks on oluline mõista, et ükski üksik tööriist ei garanteeri 100% turvalisust. Süsteemne lähenemine, kus kombineeritakse erinevaid jälgimismeetodeid ja rakendatakse null-usalduse (Zero Trust) põhimõtteid ka tuuma tasandil, on ainus viis, kuidas vältida Singularity sarnaste rootkitide ohret.
Mida tähendab see Eesti ja Balti riikide ettevõtetele
Eesti ja Baltiumi riigid on tuntud oma kõrge digitaliseerimisastme poolest, kuid see teeb meid ka atraktivseks siheks keerukamate rünnakute puhul. E-riigi infrastruktuur ja meie kasvav startup-ökosüsteem tuginevad massiivselt Linuxi serveritele ja pilvlahendustele, kus eBPF-põhised tööriistad on muutunud standardiks.
Singularity rootkiti võime on eriti murettekitav ettevõtetele, kes on kiiresti implementeerinud AI-lahendusi ja automatiseeritud skaleeritavaid infrastruktuure. Kuna AI-mudelite treenimine ja käitamine nõuab sageli otsest ligipääsu riistvarale ja tuuma optimeerimist, on risk, et turvaaukud tekivad just nende spetsiifiliste konfiguratsioonide tõttu. Balti riikide ettevõtted, kes järgivad Euroopa Liidu AI Acti nõuete kohaselt läbipaistvust ja turvalisust, peavad arvestama, et nende süsteemide terviklikkus sõltub sellest, kui hästi on kaitstud just kernelitasand.
Eesti e-valitsuse ja digitaalse ökosüsteemi kontekstis tähendab see, et me ei saa tugineda ainult ühele vendorile või ühele tuvastamismeetodile. Balti riikide IT-juhtidele on sõnum selge: usaldatud protsesside nimekirjad ei ole enam turvaline pelumeetod. Meie digitaalne suveräänsus nõuab süsteeme, mis on vastupidised mitte ainult tuntud viirustele, vaid ka dünaamiliselt muutuvatele rootkitidele, mis suudavad pimdada kaasaegsed jälgimissüsteeme.
Korduma kippuvad küsimused
Mis on Singularity rootkit?
See on Linuxi tuuma rootkit, mis on loodud demonstreerima, kuidas mööbida kaasaegseid EDR-lahendusi, nagu Elastic Defend, kasutades telemeetria blokeerimist ja koodi obfuskatsiooni.
Kuidas Singularity vältib Elastic Defendi tuvastamist?
See kasutab Elasticu usaldatud protsesside nimekirja, et vältida eBPF-põhise telemeetria genereerimist, ning rakendab sümbolite randomiseerimist ja XOR-kodeerimist, et mööbida YARA-skaneerimist.
Kas see rünnak on võimalik kõigis Linuxi versioonides?
Uuringus kasutati Ubuntu 6.8 tuumaga keskkonda, kuid meetodid, nagu eBPF-kaartide manipuleerimine ja memfd_create kasutamine, on üldisemad Linuxi funktsioone kasutavad tehniikad.
Kuidas ettevõtted end selle eest kaitseks saavad?
Soovitatav on piirata ligipääsu BPF-kaartidele, jälgida anonüümsete mälifailide loomist ja rakendada süsteemset turvakihtide kombineerimist, mitte tugeda vaid ühele EDR-tööriistale.
Allikad: Gbhackers, Matheuzsecurity (2) ·
Scrivila qui: Susanna, l assistente AI di glacom, ti risponde via email con un approfondimento gratuito.
Nessuna consulenza personalizzata (finanziaria, legale o medica): solo informazione e fonti. Email usata solo per rispondere.
oppure scrivile su: WhatsApp · Telegram · SimpleX · Delta Chat · Email