Un nuevo ataque a la cadena de suministro: Hackean el repositorio de código PHP Git

Los cibercriminales han vuelto la cara desde hace ya bastante tiempo, hacia el código fuente de las aplicaciones. Era obvio, la gran mayoría de los esfuerzos en seguridad se han enfocado en crear soluciones que ayudan en todo menos en asegurar el software.Si bien hay herramientas que identifican vulnerabilidades en código fuente o mientras un software está en ejecución, estas se basan en una premisa: “Los defectos de seguridad son introducidos ‘sin querer’ por los programadores”, pero ¿qué pasa cuando intencionalmente los programadores, o alguien más, introduce código malicioso que incurra en una falla de seguridad ?

Un ejemplo de ello ocurrió apenas hace unos días, en donde, actores aún no identificados, comprometieron el servidor oficial GIT de uno de los lenguajes de programación más populares del mundo, se trata de PHP. De acuerdo con W3Techs, cerca del 80% de los sitios Web utilizan como este lenguaje de programación.

¿Qué ocurrió?

De acuerdo con reportes, el día 28 de marzo hubo dos actualizaciones de código fuente sobre el repositorio oficial de PHP http://git[.]php[.]net empleado nombres no autorizados. Rasmus Lerdorf que para aquellos son un “geek” de la programación, lo ubicarán como el creador de la primera versión de PHP con el nombre Nikita Popov, quien es un desarrollador de software en Jetbrains. Si se hace conocido el nombre de Jetbrains, es por que dicha empresa fue una de las piezas que ayudaron a ensamblar lo ocurrido y tan sonado con SolarWinds.

En un comunicado del propio Nikita Popov, indica que no saben que ocurrió y que se cree que lo sucedidó fue derivado del compromiso del servidor donde se encuentra hospedado el servicio Git.

Lo actores maliciosos, realizaron un “commit” como “Fix Typ”, emplearon este nombre con el objetivo que pudiera pasar desapercibido como una actualización de código que “reparaba” una corrección tipográfica, pero en realidad lo que introducía era un “backdoor” que permitía ejecutar de manera arbitraría código PHP.

El código fuente fue agregado por los actores maliciosos, en una línea resaltada que buscaba la ejecución del código PHP, el cual tomaba la cabecera HTTP “HTTP_USER_AGENT” , siempre y cuando el inicio de la cadena enviada comenzara con “zerodium”. Zerodium es el nombre una empresa con sede en Washington, la cual salió a informar que no está involucrada en el incidente.

Esta puerta trasera no llegó a producción y afortunadamente fue detectada con anticipación por un ingeniero de software localizado en Republica Checa llamado Michael Voříšek.

Referencias:
https://github.com/php/php-src/commit/8d743d5281c29e9750e183804b7ba02e1ff82f0b
https://news-web.php.net/php.internals/113838
https://w3techs.com/technologies/details/pl-php