La vulnerabilidad Log4Shell ha revelado una paradoja terrible: que muchos sistemas informáticos en el mundo dependen de piezas de software que desarrollan programadores open source en su tiempo libre y que nadie revisa.
Cuando parecía que ya lo habíamos visto todo en 2021 en términos de ciberseguridad (recordemos que fue el año en que el Servicio Público de Empleo Estatal quedó noqueado durante semanas por un ransomware o que peligró el suministro de energía en una buena parte de Estados Unidos por otro ataque similar dirigido a la empresa Colonial Pipeline), llegó Log4Shell. Se detectó el 1 de diciembre, pero no se dio a conocer al gran público hasta el 9 de ese mes.
Log4Shell, de hecho, ha sido calificada por algunos como “la peor vulnerabilidad de la historia». Otros menos catastrofistas han dicho que es la más grave de la última década. En esta ocasión, el software afectado es una librería open source de Java, Log4j, creada por un programador asociado a la Apache Software Foundation y que se usa para el registro de actividad y para encontrar errores en un programa.
El gran peligro de esta vulnerabilidad es que permite a extraños ejecutar código en un equipo de forma remota. Código como un ransomware, por ejemplo, para cifrar y secuestrar la información de empresas y organismos públicos. Y también para espiar.
Log4Shell, un pequeño gran problema planetario
El gran problema es que Log4j, que en realidad es una pieza muy pequeña formada por unas cuantas líneas de código, es que se utiliza en innumerables sistemas de software empresarial y en aplicaciones web en todo el mundo. Recursos así hay muchos en cualquier programa informático y permiten a los programadores trabajar más deprisa, sin tener que construir todo desde cero.
Por eso Log4Shell se convirtió de la noche a la mañana en un quebradero de cabeza planetario. No se trata tanto de su sofisticación, sino de la superficie de ataque que deja al descubierto. “Cada vez que lo pienso se me ponen los pelos de punta”, reocnoció a finales de diciembre un experto en ciberseguridad español. Log4Shell puede afectar a millones de usuarios de servicios online como Minecraft, iCloud, Steam o Cloudflare, entre otros.
Además, la librería de Java afectada se puede encontrar también en el código de aplicaciones de ciberseguridad de marcas como CyberArk, Okta, Fortinet, SonicWall y Sophos. Y no solo eso: a nivel doméstico, desde el router hasta la aplicación del banco instalada en el móvil pueden emplear esta pequeña pieza de código.
Log4Shell seguirá dando que hablar
La buena noticia es que existe parche, y, de hecho, fue lanzado a las poco más de 24 horas de que se conociera el agujero. A partir de ese momento, ciberdelincuentes y expertos en seguridad iniciaron una carrera para ver quién llegaba antes. Unos intentando aprovechar la puerta de entrada que abría Log4Shell y otros parcheando los sistemas para cerrarla. En consecuencia, se han detectado millones de intentos de explotar la vulnerabilidad y muchas familias de software malicioso propagándose a través de la librería de Java afectada.
El control de la situación tardará mucho tiempo en llegar, según los expertos. Es probable que pasen meses. De hecho, una vulnerabilidad suele dar titulares de prensa durante años. Los fabricantes de software que están afectados, los grandes organismos públicos y las corporaciones serán los primeros en invertir los recursos necesarios en actualizar su código para evitar los riesgos asociados a Log4Shell. El problema, sin embargo, estará en aquellas compañías más pequeñas que no tienen medios o personal para hacerlo, o que, sin más, ignoran que Log4Shell está en las entrañas de sus sistemas.
Detrás solo hay programadores voluntarios
Además, Log4Shell ha desvelado otra paradoja. La librería de código abierto que dio origen al problema y que está por doquier en sistemas de empresas de todo el mundo, en realidad fue desarrollada por un programador voluntario en su tiempo libre y nadie la revisaba. En concreto, se trata de Ralf Goers, que la subió en su momento a GitHub, un repositorio de Microsoft donde los desarrolladores dejan su trabajo.
Log4Shell ha demostrado que muchas pequeñas piezas que se integran en complejos y caros sistemas informáticos en realidad dependen del trabajo de voluntarios dedicados en su tiempo libre al desarrollo del código abierto. Un código que, además, nadie audita. Por eso, son muchas las voces que reclaman que el trabajo de estos programadores que comparten sus códigos de forma desinteresada se reconozca. Desde finales de diciembre, el propio Goers ha pasado de tener tres mecenas a más de 70 en la plataforma GitHub. Es decir, personas que apoyan su trabajo con aportaciones entre cinco y 50 dólares (entre 4 y 40 € aproximadamente) al mes.
Los creadores de código open source empiezan a estar hartos. Quieren que las compañías que usan sus líneas de código arrimen el hombro. Para que Log4Shell no vuelva a pasar, o, por lo menos, para minimizar sus efectos en caso de que acabe aflorando una vulnerabilidad. Y parece que en las altas esferas empiezan a tomar nota. De hecho, el pasado 13 enero, la misma Casa Blanca en Estados Unidos organizó una reunión para discutir el tema. En ella estaban grandes tecnológicas, como Google, Amazon, Apple y Oracle, entidades vinculadas al software libre, como Apache, Linux y GitHub, y departamentos y agencias federales.
Todos quieren ahora encontrar formas para prevenir vulnerabilidades como la de Log4Shell, afinar en el proceso para encontrar defectos y corregirlos, y acortar el tiempo para distribuir parches y correcciones. Nadie quiere que dos o tres líneas de código desarrolladas por un aficionado vuelvan a poner en jaque al mundo otra vez.
En Nobbot | Todo el ‘malware’ alrededor del coronavirus
Imágenes | Alexander Limbach/Shutterstock, Freepik.es/Pressfoto