Yataco
29 de Marzo del 2021

Hackeado el repositorio del código fuente de PHP

Hackeado el repositorio del código fuente de PHP


Hace una semana aproximadamente Facebook, WhatsApp e Instagram presentarón problemas en sus servidores que en poco tiempo pudieron solucionarlo, cabe recalcar que Facebook está programado principalmente en el lenguaje de programación PHP, MySQL (Base de datos) y Memcache (LAMP), pero que pasaría si el lenguaje de programación en que esta desarrollado la principal red social y millones de páginas web dejaría de funcionar?

Este domingo 28 de marzo, hackers lograron acceder al repositorio Git interno del lenguaje de programación PHP y lograron añadir una puerta trasera al código fuente del mismo. Estamos hablando del lenguaje del lado del servidor más usado en toda la web y que se calcula está en uso en el 79.1% de todos los sitios web.

Como explican en las listas de correo de PHP, el ataque insertó dos cambios maliciosos en el repositorio php-src, y aunque aún se desconoce la causa y hay una investigación en marcha, todo apunta a que el servidor oficial git.php.net fue comprometido.

En un intento por comprometer el código de PHP, un grupo de atacantes vulneró el repositorio oficial Git. Los ataques maliciosos afectaron al repositorio Git php-src. Los atacantes publicaron un cambio para “corregir un error tipográfico”, aunque el objetivo era abrir una puerta trasera para la ejecución remota de código (RCE) en un sitio que utilizara la versión adulterada de PHP.

Los atacantes firmaron los cambios como Rasmus Lerdorf y Nikita Popovm, los principales desarrolladores y mantenedores de PHP.

“La primera confirmación [del ataque] se detectó un par de horas después de que se realizara, como parte de la revisión rutinaria del código posterior a la confirmación. Los cambios fueron obviamente maliciosos y se revertieron de inmediato”, dijo Popov.

PHP es el lenguaje de programación del lado del servidor que alimenta a más de 79 por ciento de los sitios web en internet.

Aunque la organización lleva a cabo una investigación sobre el incidente, afirman que el ataque se originó en el servidor git.php.net y no con una cuenta Git de algún usuario.

Con los sistemas de control de versiones de código fuente como Git es posible firmar una cambio como otra persona a nivel local y luego cargar la confirmación falsificada en el servidor remoto.

Según Popov, los cambios afectaron a la rama de desarrollo de PHP 8.1, que se lanzará a finales de 2021. “Estamos revisando los repositorios para detectar cualquier corrupción más allá de las dos confirmaciones mencionadas”, puntualizó el desarrollador.

Como precaución después de este incidente, los mantenedores de PHP han decidido migrar el repositorio oficial de código fuente PHP a GitHub.

“Si bien la investigación está en curso, hemos decidido que mantener nuestra propia infraestructura git es un riesgo de seguridad innecesario y descontinuaremos el servidor git.php.net”, afirmó Popov.

De esta manera, cualquier cambio de código se enviará a GitHub en lugar del servidor git.php.net. “Los repositorios en GitHub, que antes eran solo espejos, se volverán canónicos”, agregó el desarrollador.

Los interesados ​​en contribuir al proyecto PHP deberán ser agregados como parte de la organización PHP en GitHub.

Aunque el incidente fue resuelto rápidamente, en la práctica hubiese afectado a una pequeña porción de los sistemas que usan servidores PHP, puesto que suele ser usual que la mayoría se tarden mucho tiempo en actualizar a la última versión.